diff --git a/product/Coramy/.cvsignore b/product/Coramy/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/Constraint/.cvsignore b/product/Coramy/Constraint/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/Constraint/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/Constraint/__init__.py b/product/Coramy/Constraint/__init__.py deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/Document/.cvsignore b/product/Coramy/Document/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/Document/AssortedResource.py b/product/Coramy/Document/AssortedResource.py deleted file mode 100755 index 8d0689bce557535c40b9a59a05f3b03f26afe77d..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/AssortedResource.py +++ /dev/null @@ -1,106 +0,0 @@ -############################################################################## -# -# Copyright (c) 2004 Nexedi SARL and Contributors. All Rights Reserved. -# Yoshinori Okuji <yo@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.AssortedResource import AssortedResource as ERP5AssortedResource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class AssortedResource(ERP5AssortedResource): - """ - AssortedResource defines which - resource is being transformed - - - quantity - - Maybe defined by mapped values inside the assorted resource - - """ - - meta_type = 'CORAMY Assorted Resource' - portal_type = 'Assorted Resource' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.SimpleItem - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.TransformedResource - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -A bank account number holds a collection of numbers -and codes (ex. SWIFT, RIB, etc.) which may be used to -identify a bank account.""" - , 'icon' : 'assorted_resource_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addAssortedResource' - , 'immediate_view' : 'assorted_resource_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'assorted_resource_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'assorted_resource_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/Assortiment.py b/product/Coramy/Document/Assortiment.py deleted file mode 100755 index dc32c648f71145a60023742d53cd32f1be7e50a6..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Assortiment.py +++ /dev/null @@ -1,168 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.Base import Base -from Products.ERP5Type.XMLMatrix import XMLMatrix - - -from zLOG import LOG - -class Assortiment(Resource, XMLMatrix): - """ - un assortiment.. - """ - - meta_type = 'CORAMY Assortiment' - portal_type = 'Assortiment' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Assortiment - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('coloris', 'taille') - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un modele...""" - , 'icon' : 'modele_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addAssortiment' - , 'immediate_view' : 'assortiment_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Modele', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'assortiment_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'assortiment_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - - security.declareProtected(Permissions.View, 'getDefaultQuantityUnit') - def getDefaultQuantityUnit(self): - # Requires for Assorted Resource XXX temp patch until getAggregated methods use real classes instead of dicts - # and access props/cats through accessors - return "Unite" - - security.declareProtected(Permissions.View, 'getQuantityUnit') - def getQuantityUnit(self): - # Requires for Assorted Resource XXX temp patch until getAggregated methods use real classes instead of dicts - # and access props/cats through accessors - return "Unite" - - security.declareProtected(Permissions.View, 'getQuantityUnitList') - def getQuantityUnitList(self): - # Requires for Assorted Resource XXX temp patch until getAggregated methods use real classes instead of dicts - # and access props/cats through accessors - return ["Unite"] diff --git a/product/Coramy/Document/Coloris.py b/product/Coramy/Document/Coloris.py deleted file mode 100755 index 9b9154433edf23bd5f3a84c4310d3aecb890667b..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Coloris.py +++ /dev/null @@ -1,107 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5.Document.Image import Image - -class Coloris(Image, XMLObject): - """ - une variante coloris.. - """ - - meta_type = 'CORAMY Coloris' - portal_type = 'Coloris' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Coloris - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un coloris...""" - , 'icon' : 'coloris_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addColoris' - , 'immediate_view' : 'coloris_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'coloris_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'image_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'download' - , 'name' : 'Download' - , 'category' : 'object_action' - , 'action' : 'download' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - diff --git a/product/Coramy/Document/Composant.py b/product/Coramy/Document/Composant.py deleted file mode 100755 index 89cfb5196a2eb5cbd3e71f145304a00dec2605c4..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Composant.py +++ /dev/null @@ -1,158 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Resource import Resource - -class Composant(Resource): - """ - Un composant Coramy.... - """ - - meta_type = 'CORAMY Composant' - portal_type = 'Composant' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Composant - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('variante', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un tissu est une resource variantable en couleur.""" - , 'icon' : 'composant_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addComposant' - , 'immediate_view' : 'composant_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Composant', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'composant_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'object_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - # Unit conversion - security.declareProtected(Permissions.AccessContentsInformation, 'convertQuantity') - def convertQuantity(self, quantity, from_unit, to_unit): - quantity = float(quantity) - if from_unit == 'Longueur/Metre' and to_unit == 'Unite/Cone': - return quantity / self.getLengthQuantity() - elif from_unit == 'Unite/Cone' and to_unit == 'Longueur/Metre': - return quantity * self.getLengthQuantity() - else: - return quantity - - diff --git a/product/Coramy/Document/Container.py b/product/Coramy/Document/Container.py deleted file mode 100755 index 51458b4d04620271e26a73d736327e8598857eb6..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Container.py +++ /dev/null @@ -1,138 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5.Document.Container import Container as ERP5Container - -from zLOG import LOG - -class Container(ERP5Container): - """ - Container is equivalent to a movement with qty 1.0 and resource = to the kind of packaging - Container may point to item (ex. Container serial No or Parcel Serial No if tracing required) - Container may eventually usa optional property sheet to store parcel No information (we use - Item property sheet for that). Some acquisition may be required... - - Container Line / Container Cell is used to store quantities (never accounted) - Container Line / Countainer Cell may point to Item - """ - - meta_type = 'CORAMY Container' - portal_type = 'Container' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.VariationRange - , PropertySheet.ItemAggregation - , PropertySheet.Item - , PropertySheet.Container - , PropertySheet.SortIndex - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un container (colis, caisse,...).""" - , 'icon' : 'container_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addContainer' - , 'immediate_view' : 'container_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Container','Container Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'container_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'container_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - security.declareProtected(Permissions.AccessContentsInformation, 'getTargetTotalQuantity') - def getTargetTotalQuantity(self): - """ - Returns the quantity if no cell or the total quantity if cells - """ - aggregate = self.Container_zGetTotal()[0] - return aggregate.target_total_quantity diff --git a/product/Coramy/Document/ContainerLine.py b/product/Coramy/Document/ContainerLine.py deleted file mode 100755 index dd82153e9415d0dcb3fdd7e58429e5849611a164..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ContainerLine.py +++ /dev/null @@ -1,122 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from Products.ERP5.Document.ContainerLine import ContainerLine as ERP5ContainerLine - -from zLOG import LOG - -class ContainerLine(ERP5ContainerLine): - """ - A ContainerLine... - """ - - meta_type = 'CORAMY Container Line' - portal_type = 'Container Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.VariationRange - , PropertySheet.ItemAggregation - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne de container.""" - , 'icon' : 'container_line_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addContainerLine' - , 'immediate_view' : 'container_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Container Cell', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'container_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'container_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/CorrespondanceMesures.py b/product/Coramy/Document/CorrespondanceMesures.py deleted file mode 100755 index 64d7c11079b46190362dbabd538f9b04fa77f7a6..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/CorrespondanceMesures.py +++ /dev/null @@ -1,241 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo -from Products.CMFCore.WorkflowCore import WorkflowAction - -from Products.CMFPhoto.CMFPhoto import CMFPhoto - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5.Document.Domain import Domain -from Products.ERP5.Document.Image import Image - -from zLOG import LOG - -class CorrespondanceMesures(XMLObject, XMLMatrix, Image): - """ - A matrix which provides default mesure_code and mesure_name - """ - meta_type = 'CORAMY Correspondance Mesures' - portal_type = 'Correspondance Mesures' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.VariationRange - , PropertySheet.CorrespondanceMesures - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une grille de correspondance de tailles...""" - , 'icon' : 'correspondance_mesures_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addCorrespondanceMesures' - , 'immediate_view' : 'correspondance_mesures_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Set Mapped Value', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'correspondance_mesures_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'correspondance_mesures_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def __init__(self, id, **kw): - Image.__init__(self, id, **kw) - XMLObject.__init__(self, id, **kw) - - # Inheritance - _edit = Image._edit - security.declareProtected( Permissions.ModifyPortalContent, 'edit' ) - edit = WorkflowAction( _edit ) - - security.declareProtected('View', 'index_html') - index_html = Image.index_html - - security.declareProtected('AccessContentsInformation', 'content_type') - content_type = Image.content_type - - def manage_afterClone(self, item): - XMLObject.manage_afterClone(self, item) - CMFPhoto.manage_afterClone(self, item) - - def manage_afterAdd(self, item, container): - XMLObject.manage_afterAdd(self, item, container) - CMFPhoto.manage_afterAdd(self, item, container) - - def manage_beforeDelete(self, item, container): - CMFPhoto.manage_beforeDelete(self, item, container) - - # Main methods - security.declareProtected(Permissions.ModifyPortalContent, '_setMatrixCellRange') - def _setMatrixCellRange(self): - line = self.getCategoryMembershipList('mesure_vetement',base=0) - if len(line) == 0 : - line = [None] - column = self.getCategoryMembershipList('reference_mesure',base=0) - if len(column) == 0 : - column = [None] - self._setCellRange(line, column, base_id='mesure_client') - # Empty cells if no variation - if line == [[None]] and column == [[None]]: - self.delCells(base_id='mesure_client') - # And fix it in case the cells are not renamed (XXX this will be removed in the future) - self._checkConsistency(fixit=1) - - security.declareProtected(Permissions.ModifyPortalContent, 'setMatrixCellRange') - def setMatrixCellRange(self): - """ - Defines the possible variations which taille_client value - variate on and reindex the object - """ - self._setMatrixCellRange() - self.reindexObject() - - security.declareProtected(Permissions.ModifyPortalContent, '_setReferenceMesureList') - def _setReferenceMesureList(self,value): - self._categorySetReferenceMesureList(value) - self._setMatrixCellRange() - - security.declareProtected(Permissions.ModifyPortalContent, '_setMesureVetementList') - def _setMesureVetementList(self,value): - self._categorySetMesureVetementList(value) - self._setMatrixCellRange() - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - # Inheritance solving - security.declareProtected(Permissions.ModifyPortalContent, 'checkConsistency') - checkConsistency = XMLMatrix.checkConsistency - - security.declarePrivate('_checkConsistency') - def _checkConsistency(self, fixit=0): - """ - Check the constitency of transformation elements - """ - error_list = XMLMatrix._checkConsistency(self, fixit=fixit) - - # First quantity - # We build an attribute equality and look at all cells - constraint = Constraint.AttributeEquality( - domain_base_category_list = ('reference_mesure', 'mesure_vetement',), - predicate_operator = 'SUPERSET_OF', - mapped_value_property_list = ['mesure_client'] ) - for k in self.getCellKeys(base_id = 'mesure_client'): - kw={} - kw['base_id'] = 'mesure_client' - c = self.getCell(*k, **kw) - if c is not None: - predicate_value = [] - for p in k: - if p is not None: predicate_value += [p] - constraint.edit(predicate_value_list = predicate_value) - if fixit: - error_list += constraint.fixConsistency(c) - else: - error_list += constraint.checkConsistency(c) - - return error_list - diff --git a/product/Coramy/Document/CorrespondanceTailles.py b/product/Coramy/Document/CorrespondanceTailles.py deleted file mode 100755 index 8e4813e58e5be768ba3f6556bf38fa5e70e1098f..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/CorrespondanceTailles.py +++ /dev/null @@ -1,223 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5.Document.Domain import Domain - -from zLOG import LOG - -class CorrespondanceTailles(XMLObject, XMLMatrix): - """ - A matrix which provides taille_client - for a given taille Coramy - """ - - meta_type = 'CORAMY Correspondance Tailles' - portal_type = 'Correspondance Tailles' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.VariationRange - , PropertySheet.CorrespondanceTailles - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une grille de correspondance de tailles...""" - , 'icon' : 'correspondance_tailles_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addCorrespondanceTailles' - , 'immediate_view' : 'correspondance_tailles_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Set Mapped Value', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'correspondance_tailles_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'correspondance_tailles_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.ModifyPortalContent, '_setMatrixCellRange') - def _setMatrixCellRange(self): - line = self.getCategoryMembershipList('morpho_type',base=0) - if len(line) == 0 : - line = [None] - column = self.getCategoryMembershipList('taille',base=0) - if len(column) == 0 : - column = [None] - self._setCellRange(line, column, base_id='taille_client') - # Empty cells if no variation - if line == [[None]] and column == [[None]]: - self.delCells(base_id='taille_client') - # And fix it in case the cells are not renamed (XXX this will be removed in the future) - self._checkConsistency(fixit=1) - - security.declareProtected(Permissions.ModifyPortalContent, 'setMatrixCellRange') - def setMatrixCellRange(self): - """ - Defines the possible variations which taille_client value - variate on and reindex the object - """ - self._setMatrixCellRange() - self.reindexObject() - - # Methods for matrix UI widgets - security.declareProtected(Permissions.AccessContentsInformation, 'getLineItemList') - def getLineItemList(self): - clist = self.getCategoryMembershipList('morpho_type',base=0) - if len(clist) == 0 : - clist = [None] - result = [] - for c in clist: - result += [(c,c)] - return result - - security.declareProtected(Permissions.ModifyPortalContent, '_setTailleList') - def _setTailleList(self,value): - self._categorySetTailleList(value) - self._setMatrixCellRange() - - security.declareProtected(Permissions.ModifyPortalContent, '_setMorphoTypeList') - def _setMorphoTypeList(self,value): - self._categorySetMorphoTypeList(value) - self._setMatrixCellRange() - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - # Inheritance solving - security.declareProtected(Permissions.ModifyPortalContent, 'checkConsistency') - checkConsistency = XMLMatrix.checkConsistency - - security.declarePrivate('_checkConsistency') - def _checkConsistency(self, fixit=0): - """ - Check the constitency of transformation elements - """ - error_list = XMLMatrix._checkConsistency(self, fixit=fixit) - - # First quantity - # We build an attribute equality and look at all cells - constraint = Constraint.AttributeEquality( - domain_base_category_list = ('taille', 'morpho_type',), - predicate_operator = 'SUPERSET_OF', - mapped_value_property_list = ['taille_client'] ) - for k in self.getCellKeys(base_id = 'taille_client'): - kw={} - kw['base_id'] = 'taille_client' - c = self.getCell(*k, **kw) - if c is not None: - predicate_value = [] - for p in k: - if p is not None: predicate_value += [p] - constraint.edit(predicate_value_list = predicate_value) - if fixit: - error_list += constraint.fixConsistency(c) - else: - error_list += constraint.checkConsistency(c) - - return error_list - diff --git a/product/Coramy/Document/DeliveryLine.py b/product/Coramy/Document/DeliveryLine.py deleted file mode 100755 index c307e7ff97d024f83992ac50d83fca5ea02a87f5..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/DeliveryLine.py +++ /dev/null @@ -1,119 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.DeliveryLine import DeliveryLine as ERP5DeliveryLine -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class DeliveryLine(ERP5DeliveryLine): - """ - Une ligne de livraison.... - - """ - meta_type = 'CORAMY Delivery Line' - portal_type = 'Delivery Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.VariationRange - , PropertySheet.CoramyDeliveryLine - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'order_line_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addDeliveryLine' - , 'immediate_view' : 'delivery_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'delivery_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - diff --git a/product/Coramy/Document/Discount.py b/product/Coramy/Document/Discount.py deleted file mode 100755 index 0cebba64c1a6474a64c6b5aa48b933edc7efafd0..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Discount.py +++ /dev/null @@ -1,100 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Discount import Discount as ERP5Discount - -class Discount(ERP5Discount): - """ - Discounts are used in orders, trade condition,... - """ - - meta_type = 'CORAMY Discount' - portal_type = 'Discount' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.SortIndex - , PropertySheet.Discount - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Discounts are used in orders, trade condition,...""" - , 'icon' : 'discount_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addDiscount' - , 'immediate_view' : 'discount_edit' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'discount_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'discount_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/ElementTarif.py b/product/Coramy/Document/ElementTarif.py deleted file mode 100755 index 853e819e9522c77ef183de6ec16345e5e48df1e7..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ElementTarif.py +++ /dev/null @@ -1,144 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction - -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.MappedValue import MappedValue as ERP5MappedValue - -class ElementTarif(ERP5MappedValue, XMLMatrix): - """ - Un element de tarif est un prix pour un ensemble de conditions d'application... - """ - - meta_type = 'CORAMY Element Tarif' - portal_type = 'Element Tarif' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Price - , PropertySheet.Arrow - , PropertySheet.ElementTarif - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'element_tarif_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addElementTarif' - , 'immediate_view' : 'element_tarif_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'element_tarif_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'object_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.ModifyPortalContent, '_setQuantityRangeList') - def _setQuantityRangeList(self, category_list): - """ - Defines the possible base categories which Quantity value (Q) - variate on - """ - self._setCategoryMembership('quantity_range', category_list, base=0) - self._setCellRange((None,), category_list, base_id = 'destination_base_price') - - security.declareProtected(Permissions.ModifyPortalContent, 'setQuantityRangeList') - def setQuantityRangeList(self, category_list): - self._setQuantityRangeList(category_list) - self.reindexObject() - - - security.declarePrivate( '_edit' ) - def _edit(self, **kw): - """ - Solve here some constraints - """ - ERP5MappedValue._edit(self, **kw) - self.setPredicateValueList(self.getCategoryMembershipList(('taille','coloris'), base=1)) - - security.declareProtected( Permissions.ModifyPortalContent, 'edit' ) - edit = WorkflowAction( _edit ) - - - diff --git a/product/Coramy/Document/Forme.py b/product/Coramy/Document/Forme.py deleted file mode 100755 index b10e9ac613e28f59dac5fb7cf77c9f72abc8577a..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Forme.py +++ /dev/null @@ -1,184 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.CMFCore.WorkflowCore import WorkflowMethod - -class Forme(Resource): - """ - un modele.. - """ - - meta_type = 'CORAMY Forme' - portal_type = 'Forme' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Forme - , PropertySheet.PresentAuCatalogue - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('taille',) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un modele...""" - , 'icon' : 'modele_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addForme' - , 'immediate_view' : 'forme_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Dessin Technique','Vetement', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'forme_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'modele_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - def _StateBrouillon2Etude(self): - """ - This method is called by modele_worflow - to update forme workflow - """ - return 'toto' - - security.declarePublic( 'StateBrouillon2Etude' ) - StateBrouillon2Etude = WorkflowMethod(_StateBrouillon2Etude,id='auto_soumettre_modelisme') - - def _StateEtude2Prototype(self): - """ - This method is called by modele_worflow - to update forme workflow - """ - return 'toto' - - security.declarePublic( 'StateEtude2Prototype' ) - StateEtude2Prototype = WorkflowMethod(_StateEtude2Prototype,id='auto_lancer_prototype') - - def _StateEtude2FormeOk(self): - """ - This method is called by modele_worflow - to update forme workflow - """ - return 'toto' - - security.declarePublic( 'StateEtude2FormeOk' ) - StateEtude2FormeOk = WorkflowMethod(_StateEtude2FormeOk,id='auto_valider_forme') - - def _StateFormeOk2Valide(self): - """ - This method is called by modele_worflow - to update forme workflow - """ - return 'toto' - - security.declarePublic( 'StateFormeOk2Valide' ) - StateFormeOk2Valide = WorkflowMethod(_StateFormeOk2Valide,id='auto_valider_documentation') - diff --git a/product/Coramy/Document/Gamme.py b/product/Coramy/Document/Gamme.py deleted file mode 100755 index 6bc706fd3bb12d3a76da6ee2901f7d2e882b56db..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Gamme.py +++ /dev/null @@ -1,141 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class Gamme(Resource): - """ - une gamme.. - """ - - meta_type = 'CORAMY Gamme' - portal_type = 'Gamme' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Gamme - ) - - # Hard Wired Variation List - variation_base_category_list = ('coloris',) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une gamme...""" - , 'icon' : 'gamme_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addGamme' - , 'immediate_view' : 'gamme_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Gamme', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'gamme_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'gamme_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - diff --git a/product/Coramy/Document/GrilleConsommation.py b/product/Coramy/Document/GrilleConsommation.py deleted file mode 100755 index 25bf4c3abed00de764c763dc1e6894f6f3dc1fb3..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/GrilleConsommation.py +++ /dev/null @@ -1,155 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5.Document.Domain import Domain - -from zLOG import LOG - -class GrilleConsommation(XMLObject, XMLMatrix): - """ - A matrix which provides default quantities - for a given quantity - """ - - meta_type = 'CORAMY Grille Consommation' - portal_type = 'Grille Consommation' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.VariationRange - , PropertySheet.GrilleConsommation - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une gamme...""" - , 'icon' : 'grille_consommation_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addGrilleConsommation' - , 'immediate_view' : 'grille_consommation_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Gamme', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'grille_consommation_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'grille_consommation_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.ModifyPortalContent, '_setTailleList') - def _setTailleList(self, value): - if type(value) is type('a'): value = [value] - self._setCellRange(value, value, base_id='quantity') - self._categorySetTaille(value) - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - # Inheritance solving - security.declareProtected(Permissions.ModifyPortalContent, 'checkConsistency') - checkConsistency = XMLMatrix.checkConsistency - diff --git a/product/Coramy/Document/Inventory.py b/product/Coramy/Document/Inventory.py deleted file mode 100755 index f5550b8ecaed63d808063a7f680addb03ad1d3ea..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Inventory.py +++ /dev/null @@ -1,113 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from Products.CMFCore.utils import getToolByName -from Products.CMFCore.WorkflowCore import WorkflowMethod -from AccessControl import ClassSecurityInfo -from Products.ERP5Type import Permissions, PropertySheet, Constraint -from Products.ERP5.Document.Inventory import Inventory as ERP5Inventory - -class Inventory(ERP5Inventory): - # CMF Type Definition - meta_type = 'CORAMY Inventory' - portal_type = 'Inventory' - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Default Properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.Path - , PropertySheet.FlowCapacity - ) - - # CMF Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une liste de mouvements d'inventaire...""" - , 'icon' : 'inventory_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addInventory' - , 'immediate_view' : 'inventory_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Inventory Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'inventory_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'inventory_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/InventoryLine.py b/product/Coramy/Document/InventoryLine.py deleted file mode 100755 index 66a7df0c8f3f0e900ca5ecc4fa38b0f32a3ce0c1..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/InventoryLine.py +++ /dev/null @@ -1,121 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.InventoryLine import InventoryLine as ERP5InventoryLine - -class InventoryLine(ERP5InventoryLine): - """ - An InventoryLine object allows to implement lines in - Inventories - - """ - - meta_type = 'CORAMY Inventory Line' - portal_type = 'Inventory Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Inventory - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.VariationRange - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'inventory_line_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addInventoryLine' - , 'immediate_view' : 'inventory_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'inventory_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'inventory_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/Invoice.py b/product/Coramy/Document/Invoice.py deleted file mode 100755 index f9c684033d4294c8e3640b42c29dff5d2ab870ed..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Invoice.py +++ /dev/null @@ -1,131 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Invoice import Invoice as ERP5Invoice -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class Invoice(ERP5Invoice): - """ - Une livraison d'echantillons.... - - """ - meta_type = 'CORAMY Invoice' - portal_type = 'Invoice' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Delivery - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Amount - , PropertySheet.Reference - , PropertySheet.TradeCondition - , PropertySheet.PaymentCondition - , PropertySheet.Comment - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une commande...""" - , 'icon' : 'order_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addInvoice' - , 'immediate_view' : 'invoice_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', 'Sample Order Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'invoice_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'invoice_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.AccessContentsInformation, 'getSimulationState') - def getSimulationState(self, id_only=1): - """ - Returns the current state in simulation - """ - portal_workflow = getToolByName(self, 'portal_workflow') - wf = portal_workflow.getWorkflowById('sale_invoice_transaction_workflow') - return wf._getWorkflowStateOf(self, id_only=id_only ) - diff --git a/product/Coramy/Document/Item.py b/product/Coramy/Document/Item.py deleted file mode 100755 index e15c08c7f8fb075ff9aa0aa29696eede801e5a68..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Item.py +++ /dev/null @@ -1,178 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Item import Item as ERP5Item -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class Item(ERP5Item): - """ - Un item.... - """ - - meta_type = 'CORAMY Item' - portal_type = 'Item' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Item - , PropertySheet.Amount - , PropertySheet.CoramyItem - , PropertySheet.Comment - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un item sert a assurer la tracabilite des choses dans ERP5.""" - , 'icon' : 'item_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addItem' - , 'immediate_view' : 'item_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Item', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'item_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'item_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - security.declareProtected(Permissions.ModifyPortalContent, 'getRemainingQuantity') - def getRemainingQuantity(self): - """ - Computes the quantity of an item minus quantity of all sub_items - """ - sub_item_list = self.contentValues(filter={'portal_type':'Piece Tissu'}) - sub_quantity = 0 - for sub_item in sub_item_list : - sub_quantity += sub_item.getQuantity() - return self.getQuantity() - sub_quantity - - security.declareProtected(Permissions.ModifyPortalContent, 'getLastLocationTitle') - def getLastLocationTitle(self): - """ - Returns the last location of this item or empty string - """ - related_movement_list = self.PieceTissu_zGetAggregateRelatedMovementList() - if len(related_movement_list) > 0 : - last_movement = related_movement_list[0] - quantity = last_movement.quantity - inventory = last_movement.inventory - if inventory is not None : - last_location_title = last_movement.destination_title - elif quantity >= 0 : - last_location_title = last_movement.destination_title - else : - last_location_title = '' - return last_location_title - else : - return '' diff --git a/product/Coramy/Document/Machine.py b/product/Coramy/Document/Machine.py deleted file mode 100755 index 2d13d7bbf19968584b6b0b5f52c634bf9e95134f..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Machine.py +++ /dev/null @@ -1,83 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Products.Coramy.Document.Item import Item -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from AccessControl import ClassSecurityInfo - -class Machine(Item): - """ - une machine.. - """ - - meta_type = 'CORAMY Machine' - portal_type = 'Machine' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.Amount - , PropertySheet.ModeleMachine - , PropertySheet.Reference - , PropertySheet.Machine - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un modele...""" - , 'icon' : 'machine_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addMachine' - , 'immediate_view' : 'machine_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Machine', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'machine_view' - , 'permissions' : ( - Permissions.View, ) - }, - ) - } diff --git a/product/Coramy/Document/Modele.py b/product/Coramy/Document/Modele.py deleted file mode 100755 index 39d2c7da16f09ccb0729d7f2307669aadd159dc9..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Modele.py +++ /dev/null @@ -1,181 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.Base import Base -from Products.ERP5Type.XMLMatrix import XMLMatrix - - -from zLOG import LOG - -class Modele(Resource, XMLMatrix): - """ - un modele.. - """ - - meta_type = 'CORAMY Modele' - portal_type = 'Modele' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Modele - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('transformation_state', 'coloris', 'taille', 'morphologie',) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un modele...""" - , 'icon' : 'modele_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addModele' - , 'immediate_view' : 'modele_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Modele', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'modele_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'modele_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def __init__(self, id, **kw): - """ - Special init method with hard wired category - """ - Resource.__init__(self, id, **kw) - # DOES NOT WORK self._setCategoryMembership('transformation_state', ('coupe', 'fini',)) - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - security.declareProtected( Permissions.ModifyPortalContent, 'newCellContent' ) - def newCellContent(self, id): - """ - This method can be overriden - """ - self.invokeFactory(type_name="Set Mapped Value",id=id) - return self.get(id) - - # Industrial prices - def _getIndustrialPrice(self, context): - """ - return PRI for Modèle - """ - for pri in self.contentValues(filter={'portal_type': 'Set Mapped Value'}): - if 'pri' in pri.getMappedValuePropertyList(): - if pri.test(context): - return pri.getProperty('pri') - return None - - def _updateIndustrialPrice(self, context): - #pass - self.modele_compute_pri(batch_mode=1) - - diff --git a/product/Coramy/Document/ModeleMachine.py b/product/Coramy/Document/ModeleMachine.py deleted file mode 100755 index 928004e424c65e3c276c2d82d83da183148d0495..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ModeleMachine.py +++ /dev/null @@ -1,91 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.Document.Folder import Folder - - -from zLOG import LOG - -class ModeleMachine(Resource, Folder): - """ - un modele de machine.. - """ - - meta_type = 'CORAMY Modele Machine' - portal_type = 'Modele Machine' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.ModeleMachine - , PropertySheet.Reference - - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('option_machine',) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un modele...""" - , 'icon' : 'modele_machine_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addModeleMachine' - , 'immediate_view' : 'modele_machine_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Option Machine', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'modele_machine_view' - , 'permissions' : ( - Permissions.View, ) - }, - ) - } diff --git a/product/Coramy/Document/Morceau.py b/product/Coramy/Document/Morceau.py deleted file mode 100755 index f36154ed45550f473749f50ddb1f745798347735..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Morceau.py +++ /dev/null @@ -1,140 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject - -class Morceau(XMLObject): - """ - un morceau.. - """ - - meta_type = 'CORAMY Morceau' - portal_type = 'Morceau' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Morceau - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un morceau...""" - , 'icon' : 'morceau_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addMorceau' - , 'immediate_view' : 'morceau_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Topic', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'morceau_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'object_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - diff --git a/product/Coramy/Document/Nomenclature.py b/product/Coramy/Document/Nomenclature.py deleted file mode 100755 index 20a32fecae8aa0891169aa5e41df350b15b8bbca..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Nomenclature.py +++ /dev/null @@ -1,124 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Transformation import Transformation -from Products.ERP5Type import PropertySheet, Permissions, Constraint, Interface - -class Nomenclature(Transformation): - """ - Une nomenclature.... - - - No nom - Titre - Correspondance taill checkbox - Corrsp. coloris checkbox - Variante par déau - Quté par défaut - Efficience - """ - - meta_type = 'CORAMY Nomenclature' - portal_type = 'Nomenclature' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Tissu - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un tissu est une resource variantable en couleur.""" - , 'icon' : 'tissu_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addNomenclature' - , 'immediate_view' : 'nomenclature_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Tissu', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'tissu_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'tissu_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - diff --git a/product/Coramy/Document/Operation.py b/product/Coramy/Document/Operation.py deleted file mode 100755 index 2432cd8251dac449d0dc19e4ad86f64a7b51cdb1..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Operation.py +++ /dev/null @@ -1,157 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.Base import Base -from Products.ERP5Type.XMLMatrix import XMLMatrix - - -from zLOG import LOG - -class Operation(Resource, XMLMatrix): - """ - une Operation.. - """ - - meta_type = 'CORAMY Operation' - portal_type = 'Operation' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Operation - ) - - # Hard Wired Variation List - - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une Operation...""" - , 'icon' : 'modele_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addModele' - , 'immediate_view' : 'modele_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Operation', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'operation_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'operation_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def __init__(self, id, **kw): - """ - Special init method with hard wired category - """ - Resource.__init__(self, id, **kw) - # DOES NOT WORK self._setCategoryMembership('transformation_state', ('coupe', 'fini',)) - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - - diff --git a/product/Coramy/Document/OptionMachine.py b/product/Coramy/Document/OptionMachine.py deleted file mode 100755 index 84fe529bf391d6021858467090aa1008dd9876ce..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/OptionMachine.py +++ /dev/null @@ -1,75 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo -from Products.ERP5.Document.Variation import Variation -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class OptionMachine(Variation): - """ - une variante de machine.. - """ - - meta_type = 'CORAMY Option Machine' - portal_type = 'Option Machine' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - ) - - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une variante de machine...""" - , 'icon' : 'option_machine_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addOptionMachine' - , 'immediate_view' : 'option_machine_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'option_machine_view' - , 'permissions' : ( - Permissions.View, ) - }, - ) - } diff --git a/product/Coramy/Document/Order.py b/product/Coramy/Document/Order.py deleted file mode 100755 index 2a05e0c19f13f9f15ae183b1cb5af8b7c35c609e..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Order.py +++ /dev/null @@ -1,119 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo -from Products.CMFCore.WorkflowCore import WorkflowMethod -from Products.ERP5.Document.Order import Order as ERP5Order -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class Order(ERP5Order): - """ - Une commande.... - - """ - - meta_type = 'CORAMY Order' - portal_type = 'Order' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.TradeCondition - , PropertySheet.PaymentCondition - , PropertySheet.Comment - , PropertySheet.Reference - , PropertySheet.CoramyOrder - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une commande...""" - , 'icon' : 'order_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addOrder' - , 'immediate_view' : 'order_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', 'Order Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'order_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/OrderLine.py b/product/Coramy/Document/OrderLine.py deleted file mode 100755 index ffc1ebadfd95d2caf4a35618085f341c07f7c2e5..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/OrderLine.py +++ /dev/null @@ -1,138 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction - -from Products.ERP5.Document.Movement import Movement -from Products.ERP5.Document.OrderLine import OrderLine as ERP5OrderLine -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class OrderLine(ERP5OrderLine): - """ - Une ligne de commande définit également un prix - Un element de tarif est un prix pour un ensemble de conditions d'application... - """ - - meta_type = 'CORAMY Order Line' - portal_type = 'Order Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.VariationRange - , PropertySheet.Price - ) - _properties = ( - # XXXX there is a name conflict here - # because of the use of reference as a key - # we rename it here to destination_reference - { 'id' : 'destination_reference', - 'description' : 'The references of the resource for default destinations', - 'type' : 'string', - 'mode' : 'w' }, - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'order_line_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addOrderLine' - , 'immediate_view' : 'order_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'order_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.AccessContentsInformation, 'getVariationBaseCategoryList') - def getVariationBaseCategoryList(self): - """ - Temp fix - """ - # Temp fix until upgrade of Variated XXX - # XXX - may be incompatible with future versions of ERP5 - if self.variation_base_category_list is None: - return [] - return list(self.variation_base_category_list) diff --git a/product/Coramy/Document/PackingList.py b/product/Coramy/Document/PackingList.py deleted file mode 100755 index 28492752fd103df8afca3c4a937714c21747313d..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/PackingList.py +++ /dev/null @@ -1,112 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo -from Products.CMFCore.WorkflowCore import WorkflowMethod -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.PackingList import PackingList as ERP5PackingList - -class PackingList(ERP5PackingList): - # CMF Type Definition - meta_type = 'CORAMY Packing List' - portal_type = 'Packing List' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Default Properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.Reference - , PropertySheet.Comment - ) - - # CMF Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -A packing list...""" - , 'icon' : 'packing_list_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addPackingList' - , 'immediate_view' : 'packing_list_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement','Delivery Line', 'Container', 'Item' - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'packing_list_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'packing_list_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/PaymentCondition.py b/product/Coramy/Document/PaymentCondition.py deleted file mode 100755 index 5c7f970beaf3074252224e5e2e3f2b4ed2ff1b42..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/PaymentCondition.py +++ /dev/null @@ -1,99 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.PaymentCondition import PaymentCondition as ERP5PaymentCondition - -class PaymentCondition(ERP5PaymentCondition): - """ - Payment Conditions are used to define all the parameters of a payment - """ - - meta_type = 'CORAMY Payment Condition' - portal_type = 'Payment Condition' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.PaymentCondition - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Payment Conditions are used to define all the parameters of a payment.""" - , 'icon' : 'payment_condition_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addPaymentCondition' - , 'immediate_view' : 'payment_condition_edit' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'payment_condition_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'payment_condition_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/ProductionOrder.py b/product/Coramy/Document/ProductionOrder.py deleted file mode 100755 index ca1247ba7d72799ae6f6d3c42c82ecd0b00e166f..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ProductionOrder.py +++ /dev/null @@ -1,132 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo -from Products.CMFCore.WorkflowCore import WorkflowMethod -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Order import Order as ERP5Order -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.ERP5Globals import movement_type_list, default_section_category -from Products.CMFCore.WorkflowCore import WorkflowMethod - -from zLOG import LOG - -class ProductionOrder(ERP5Order): - """ - Un ordre de fabrication.... - - """ - - meta_type = 'CORAMY Production Order' - portal_type = 'Production Order' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.TradeCondition - , PropertySheet.PaymentCondition - , PropertySheet.Comment - , PropertySheet.Reference - , PropertySheet.CoramyOrder - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un ordre de fabrication...""" - , 'icon' : 'production_order_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addProductionOrder' - , 'immediate_view' : 'production_order_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', 'Production Order Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'production_order_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'production_order_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected(Permissions.AccessContentsInformation, 'getFutureInventoryList') - def getFutureInventoryList(self, section = None, node = None, - node_category=None, section_category=default_section_category, simulation_state=None, - ignore_variation=0, **kw): - """ - Returns list of future inventory grouped by section or site - """ - return self.getInventoryList(at_date=None, section=section, node=self.getDestination(), - node_category=node_category, section_category=section_category, **kw) diff --git a/product/Coramy/Document/ProductionReport.py b/product/Coramy/Document/ProductionReport.py deleted file mode 100755 index 6552b006ef8f65a0ea2bcf33a22ca2c9e1dbb917..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ProductionReport.py +++ /dev/null @@ -1,118 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo -from Products.CMFCore.WorkflowCore import WorkflowMethod -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.ProductionReport import ProductionReport as \ - ERP5ProductionReport - -class ProductionReport(ERP5ProductionReport): - """ - A Transaction object allows to add - elementary accounting transactions in the general ledger - """ - - # CMF Type Definition - meta_type = 'CORAMY Production Report' - portal_type = 'Production Report' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Default Properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.Reference - , PropertySheet.Comment - ) - - # CMF Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -An order...""" - , 'icon' : 'transaction_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addProductionReport' - , 'immediate_view' : 'production_report_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'production_report_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'transaction_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/ProductionReportCell.py b/product/Coramy/Document/ProductionReportCell.py deleted file mode 100755 index 401d249a48d5b1f14235a2c778a394e2a7423454..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ProductionReportCell.py +++ /dev/null @@ -1,124 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from Products.ERP5.Document.ProductionReportCell import ProductionReportCell as \ - ERP5ProductionReportCell - -class ProductionReportCell(ERP5ProductionReportCell): - """ - A DeliveryCell allows to define specific quantities - for each variation of a resource in a delivery line. - """ - - meta_type = 'CORAMY Production Report Cell' - portal_type = 'Production Report Cell' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - isMovement = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.Predicate - , PropertySheet.Domain - , PropertySheet.MappedValue - , PropertySheet.ItemAggregation - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'order_line_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addProductionReportCell' - , 'immediate_view' : 'production_report_cell_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'production_report_cell_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'production_report_cell_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/ProductionReportLine.py b/product/Coramy/Document/ProductionReportLine.py deleted file mode 100755 index e4978698062ed1fc1bd293e4d4eddde1371057f3..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/ProductionReportLine.py +++ /dev/null @@ -1,118 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.ProductionReportLine import ProductionReportLine as \ - ERP5ProductionReportLine - -class ProductionReportLine(ERP5ProductionReportLine): - """ - Production Report Lines allow ... - """ - - meta_type = 'CORAMY Production Report Line' - portal_type = 'Production Report Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.SimpleItem - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - ) - - # Declarative interfaces - __implements__ = ( ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'production_report_line_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addProductionReportLine' - , 'immediate_view' : 'production_report_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'production_report_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'acccounting_transaction_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - diff --git a/product/Coramy/Document/SampleOrderLine.py b/product/Coramy/Document/SampleOrderLine.py deleted file mode 100755 index 68111dcb97278235de8637a4d31b0f99d7b590b9..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/SampleOrderLine.py +++ /dev/null @@ -1,123 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction - -from Products.ERP5.Document.OrderLine import OrderLine -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from Products.Coramy.Document.ElementTarif import ElementTarif - -class SampleOrderLine(OrderLine, ElementTarif): - """ - Une ligne de commande définit également un prix - Un element de tarif est un prix pour un ensemble de conditions d'application... - """ - - meta_type = 'CORAMY Sample Order Line' - portal_type = 'Sample Order Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.ElementTarif - , PropertySheet.VariationRange - , PropertySheet.SampleOrderLine - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'order_line_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSampleOrderLine' - , 'immediate_view' : 'sample_order_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'sample_order_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - diff --git a/product/Coramy/Document/SamplesOrder.py b/product/Coramy/Document/SamplesOrder.py deleted file mode 100755 index 43577253f3e8a675a24444411bdca2d018556467..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/SamplesOrder.py +++ /dev/null @@ -1,129 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Order import Order as ERP5Order -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from Products.CMFCore.WorkflowCore import WorkflowMethod - -from zLOG import LOG - -class SamplesOrder(ERP5Order): - """ - Une commande d'echantillons.... - - """ - - meta_type = 'CORAMY Samples Order' - portal_type = 'Samples Order' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.SamplesOrder - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une commande...""" - , 'icon' : 'order_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSamplesOrder' - , 'immediate_view' : 'order_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', 'Sample Order Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'order_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _StateActive2Traitee(self): - """ - This method is called by samples_delivery_worflow - to update samples_order workflow - """ - return 'toto' - - security.declarePublic( 'StateActive2Traitee' ) - StateActive2Traitee = WorkflowMethod(_StateActive2Traitee,id='auto_clore_commande') - diff --git a/product/Coramy/Document/SamplesPackingList.py b/product/Coramy/Document/SamplesPackingList.py deleted file mode 100755 index f9189ab6536996d58d8d0241338d8e7ab18927ca..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/SamplesPackingList.py +++ /dev/null @@ -1,125 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.PackingList import PackingList as ERP5PackingList -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class SamplesPackingList(ERP5PackingList): - """ - Une livraison d'echantillons.... - - """ - meta_type = 'CORAMY Samples Packing List' - portal_type = 'Samples Packing List' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.SamplesPackingList - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une commande...""" - , 'icon' : 'order_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSamplesPackingList' - , 'immediate_view' : 'samples_packing_list_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', 'Delivery Line', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'samples_packing_list_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'samples_packing_list_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - - security.declareProtected(Permissions.AccessContentsInformation, 'isAccountable') - def isAccountable(self): - """ - Coramy does not want to manage stock for samples - """ - return 0 diff --git a/product/Coramy/Document/SetMappedValue.py b/product/Coramy/Document/SetMappedValue.py deleted file mode 100755 index 2bb90307a61c187b4eb62aa055d8c13d8cffd47c..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/SetMappedValue.py +++ /dev/null @@ -1,157 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.SetMappedValue import SetMappedValue as ERP5SetMappedValue - -from zLOG import LOG - -class SetMappedValue(ERP5SetMappedValue): - """ - A SetMappedValue allows to associate a value to a domain - just like a MappedValue but uses a Set predicate instead of - a PredicateGroup - - It implements apparel specific methods - """ - meta_type = 'CORAMY Set Mapped Value' - portal_type = 'Set Mapped Value' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Predicate ) - - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.SimpleItem - , PropertySheet.CategoryCore - , PropertySheet.Predicate - , PropertySheet.Domain - , PropertySheet.Price - , PropertySheet.MappedValue - ) # We must add price for backwards compatibility (price was r - # defined in ERP5 Set Mapped Value - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -A bank account number holds a collection of numbers -and codes (ex. SWIFT, RIB, etc.) which may be used to -identify a bank account.""" - , 'icon' : 'transformed_resource_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSetMappedValue' - , 'immediate_view' : 'mapped_value_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'mapped_value_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'mapped_value_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def test(self, context): - """ - A Predicate can be tested on a given context - Includes id equivalence for certain categories (only - the trailer id is taken into account) - """ - result = 1 - for c in self.getPredicateValueList(): - base_category = c.split('/')[0] - if base_category in ('coloris', 'morphologie', 'variante'): - # Classes of equivalences - category_id = c.split('/')[-1] - for context_category in context._getCategoryMembershipList(base_category, base=1): - #result = result and (context_category.find(category_id) >= 0) - result = result and (context_category.split('/')[-1] == category_id) - else: - result = result and self.portal_categories.isMemberOf(context, c) - #LOG("Test set membership",0, str((c, result))) - return result - - def asPythonExpression(self): - """ - A Predicate can be rendered as a python expression. This - is the preferred approach within Zope. - - XXX BAD - """ - return "self.portal_categories.isMemberOf(context, '%s')" % self.getCategoryName() - - def asSqlExpression(self): - """ - A Predicate can be rendered as an sql expression. This - can be useful to create reporting trees based on the - ZSQLCatalog - - XXX BAD - """ - sql_text = '(category_uid = %s AND base_category_uid = %s)' % (self.uid, self.getBaseCategory().uid) - # Now useless since we precompute the mapping - #for o in self.objectValues(): - # sql_text += ' OR %s' % o.asSqlExpression() - return sql_text - - diff --git a/product/Coramy/Document/Supply.py b/product/Coramy/Document/Supply.py deleted file mode 100755 index 976134d6a5dfb145873939ce9fa8355e7767337a..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Supply.py +++ /dev/null @@ -1,114 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from Products.CMFCore.utils import getToolByName -from Products.CMFCore.WorkflowCore import WorkflowMethod -from AccessControl import ClassSecurityInfo -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5.Document.Supply import Supply as ERP5Supply - -class Supply(ERP5Supply): - # CMF Type Definition - meta_type = 'Coramy Supply' - portal_type = 'Supply' - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Default Properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.Path - , PropertySheet.FlowCapacity - ) - - # CMF Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une liste de mouvements...""" - , 'icon' : 'supply_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSupply' - , 'immediate_view' : 'supply_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Movement', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'supply_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'supply_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - diff --git a/product/Coramy/Document/SupplyLine.py b/product/Coramy/Document/SupplyLine.py deleted file mode 100755 index 788768595214bb980eca9bf93792c8d56de81050..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/SupplyLine.py +++ /dev/null @@ -1,130 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.CMFCore.WorkflowCore import WorkflowAction -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLMatrix import XMLMatrix - -from Products.ERP5.Document.DeliveryLine import DeliveryLine -from Products.ERP5.Document.Movement import Movement -from Products.ERP5.Document.Path import Path -from Products.ERP5.Document.SupplyLine import SupplyLine as ERP5SupplyLine -from zLOG import LOG - -class SupplyLine(ERP5SupplyLine): - """ - A DeliveryLine object allows to implement lines in - Deliveries (packing list, order, invoice, etc.) - - It may include a price (for insurance, for customs, for invoices, - for orders) - """ - - meta_type = 'Coramy Supply Line' - portal_type = 'Supply Line' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.Task - , PropertySheet.Arrow - , PropertySheet.Movement - , PropertySheet.Price - , PropertySheet.VariationRange - , PropertySheet.Path - , PropertySheet.FlowCapacity - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une ligne tarifaire.""" - , 'icon' : 'order_line_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addSupplyLine' - , 'immediate_view' : 'supply_line_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'supply_line_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'order_line_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } diff --git a/product/Coramy/Document/Tissu.py b/product/Coramy/Document/Tissu.py deleted file mode 100755 index a145966218cdfd2017bef1ae46644c8f0a271bfc..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Tissu.py +++ /dev/null @@ -1,163 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.Utils import rejectIn - -class Tissu(Resource): - """ - Un tissu Coramy.... - """ - - meta_type = 'CORAMY Tissu' - portal_type = 'Tissu' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Price - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Tissu - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('coloris', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un tissu est une resource variantable en couleur.""" - , 'icon' : 'tissu_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addTissu' - , 'immediate_view' : 'tissu_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Tissu', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'tissu_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'tissu_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - # Unit conversion - security.declareProtected(Permissions.AccessContentsInformation, 'convertQuantity') - def convertQuantity(self, quantity, from_unit, to_unit): - if from_unit == 'Surface/Centimetre_carre' and to_unit == 'Longueur/Metre': - return quantity / 100.0 / float(self.getLaizeUtile()) - else: - return quantity - - - # Unit list - security.declareProtected(Permissions.AccessContentsInformation, 'getQuantityUnitList') - def getQuantityUnitList(self): - my_default_quantity = self.getCategoryDefaultMembership('quantity_unit') - return [my_default_quantity] + rejectIn( ['Surface/Centimetre_carre', 'Longueur/Metre'], - [my_default_quantity]) - - diff --git a/product/Coramy/Document/TradeCondition.py b/product/Coramy/Document/TradeCondition.py deleted file mode 100755 index 3d454b5c8c8e84fd95be646073682c1e21652a3e..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/TradeCondition.py +++ /dev/null @@ -1,140 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.TradeCondition import TradeCondition as ERP5TradeCondition - -class TradeCondition(ERP5TradeCondition): - """ - Trade Conditions are used to store the conditions (payment, logistic,...) - which should be applied (and used in the orders) when two companies make - business together - """ - - meta_type = 'CORAMY Trade Condition' - portal_type = 'Trade Condition' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Arrow - , PropertySheet.TradeCondition - , PropertySheet.PaymentCondition - , PropertySheet.Comment - - , PropertySheet.Task - , PropertySheet.Movement - , PropertySheet.Delivery - , PropertySheet.Path - , PropertySheet.FlowCapacity - ) - - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Trade Conditions are used to store the conditions (payment, logistic,...) -which should be applied (and used in the orders) when two companies make -business together.""" - , 'icon' : 'trade_condition_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addTradeCondition' - , 'immediate_view' : 'trade_condition_edit' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'trade_condition_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'trade_condition_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() \ No newline at end of file diff --git a/product/Coramy/Document/Transformation.py b/product/Coramy/Document/Transformation.py deleted file mode 100755 index b7439bf3235eb8cbbb93c276023999402fb5456e..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Transformation.py +++ /dev/null @@ -1,175 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Resource import Resource -from Products.ERP5.Document.Transformation import Transformation as ERP5Transformation -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -from zLOG import LOG - -class Transformation(ERP5Transformation): - """ - Une nomenclature.... - - - No nom - Titre - Correspondance taill checkbox - Corrsp. coloris checkbox - Variante par déau - Quté par défaut - Efficience - """ - - meta_type = 'CORAMY Transformation' - portal_type = 'Transformation' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.VariationRange - , PropertySheet.Domain - , PropertySheet.Transformation - , PropertySheet.CoramyTransformation - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Un tissu est une resource variantable en couleur.""" - , 'icon' : 'tissu_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addTransformation' - , 'immediate_view' : 'transformation_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Variante Tissu', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'transformation_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'transformation_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - security.declareProtected(Permissions.AccessContentsInformation, 'getAggregatedAmountList') - def getAggregatedAmountList(self, context=None, REQUEST=None, **kw): - """ - Updates the title if necessary - - We must update this to use context XXX - """ - amount_list , grand_total_base_price, grand_total_source_base_price,\ - grand_total_duration, \ - grand_total_variated_base_price, grand_total_variated_source_base_price =\ - ERP5Transformation.getAggregatedAmountList(self, context=context, REQUEST=REQUEST, **kw) - grand_total_duration_france = 0.0 - for amount_item in amount_list: - # Test is this is a kind of coupe resource - #LOG("Amount", 0, str(amount_item['resource'].id)) - if amount_item['resource'].isMemberOf('operation/coupe'): - grand_total_duration_france += amount_item['duration'] - return amount_list , grand_total_base_price, grand_total_source_base_price, grand_total_duration, grand_total_duration_france, grand_total_variated_base_price, grand_total_variated_source_base_price - - - diff --git a/product/Coramy/Document/TransformedResource.py b/product/Coramy/Document/TransformedResource.py deleted file mode 100755 index f3bab0036a8105209e7b368563473669adbc4d58..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/TransformedResource.py +++ /dev/null @@ -1,137 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.TransformedResource import TransformedResource as ERP5TransformedResource - -class TransformedResource(ERP5TransformedResource): - """ - TransformedResource defines which - resource is being transformed - - - variation - - quantity - - Maybe defined by mapped values inside the transformed resource - - """ - - meta_type = 'CORAMY Transformed Resource' - portal_type = 'Transformed Resource' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.SimpleItem - , PropertySheet.CategoryCore - , PropertySheet.Amount - , PropertySheet.TransformedResource - , PropertySheet.CoramyTransformedResource - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -A bank account number holds a collection of numbers -and codes (ex. SWIFT, RIB, etc.) which may be used to -identify a bank account.""" - , 'icon' : 'transformed_resource_icon.gif' - , 'product' : 'ERP5' - , 'factory' : 'addTransformedResource' - , 'immediate_view' : 'transformed_resource_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'transformed_resource_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'transformed_resource_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - diff --git a/product/Coramy/Document/VarianteComposant.py b/product/Coramy/Document/VarianteComposant.py deleted file mode 100755 index aa06ad6c5202009ff3627055595581b9e30b5bb4..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VarianteComposant.py +++ /dev/null @@ -1,138 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5.Document.Variation import Variation -from Products.ERP5.Document.Image import Image - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class VarianteComposant(Image, Variation): - """ - Une variante composant Coramy.... - """ - - meta_type = 'CORAMY Variante Composant' - portal_type = 'Variante Composant' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Price - , PropertySheet.Variation - , PropertySheet.VarianteComposant - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('variante', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une variante de tissu est une image d'un tissu particulier qui -définit la couleur et les motifs de cette variante.""" - , 'icon' : 'variante_composant_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVarianteComposant' - , 'immediate_view' : 'variante_composant_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'variante_composant_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'variante_composant_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - diff --git a/product/Coramy/Document/VarianteGamme.py b/product/Coramy/Document/VarianteGamme.py deleted file mode 100755 index 325a8dc368cf12a752818deea23b1e29384c9284..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VarianteGamme.py +++ /dev/null @@ -1,130 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo -from Products.ERP5.Document.Variation import Variation -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface - -class VarianteGamme(Variation): - """ - une variante de gamme.. - """ - - meta_type = 'CORAMY Variante Gamme' - portal_type = 'Variante Gamme' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.VarianteGamme - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('coloris', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -une variante de gamme...""" - , 'icon' : 'variante_gamme_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVarianteGamme' - , 'immediate_view' : 'variante_gamme_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'variante_gamme_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'variante_gamme_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - diff --git a/product/Coramy/Document/VarianteModele.py b/product/Coramy/Document/VarianteModele.py deleted file mode 100755 index 7f19a6314e18ee40c782ab7f1d92c616be13d2cf..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VarianteModele.py +++ /dev/null @@ -1,141 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Image import Image -from Products.ERP5.Document.Variation import Variation - - -class VarianteModele(Image, Variation): - """ - une variante coloris d'un modele.. - """ - - meta_type = 'CORAMY Variante Modele' - portal_type = 'Variante Modele' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.VarianteModele - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('coloris', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un coloris...""" - , 'icon' : 'coloris_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVarianteModele' - , 'immediate_view' : 'variante_modele_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'variante_modele_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'image_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'download' - , 'name' : 'Download' - , 'category' : 'object_action' - , 'action' : 'download' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - diff --git a/product/Coramy/Document/VarianteMorphologique.py b/product/Coramy/Document/VarianteMorphologique.py deleted file mode 100755 index fa5256020e8268ce0cd13fc92c66d1ed54e2ae10..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VarianteMorphologique.py +++ /dev/null @@ -1,132 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Variation import Variation - -class VarianteMorphologique(Variation): - """ - Une variante morphologique pour un modele (ex profondeur de bonnet).... - """ - - meta_type = 'CORAMY Variante Morphologique' - portal_type = 'Variante Morphologique' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.Price - , PropertySheet.Variation - , PropertySheet.VarianteMorphologique - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('morphologie', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une variante morphologique definit des variantes differente de modele""" - , 'icon' : 'variante_morphologique_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVarianteMorphologique' - , 'immediate_view' : 'variante_morphologique_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'variante_morphologique_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'variante_morphologique_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - diff --git a/product/Coramy/Document/VarianteTissu.py b/product/Coramy/Document/VarianteTissu.py deleted file mode 100755 index 0c267f8a4e175888b457e3738af16d3caa9c622a..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VarianteTissu.py +++ /dev/null @@ -1,136 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Variation import Variation -from Products.ERP5.Document.Image import Image - -class VarianteTissu(Image, Variation): - """ - Une variante tissu Coramy.... - """ - - meta_type = 'CORAMY Variante Tissu' - portal_type = 'Variante Tissu' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Resource - , PropertySheet.Reference - , PropertySheet.Price - , PropertySheet.Variation - , PropertySheet.VarianteTissu - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('coloris', ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -Une variante de tissu est une image d'un tissu particulier qui -définit la couleur et les motifs de cette variante.""" - , 'icon' : 'variante_tissu_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVarianteTissu' - , 'immediate_view' : 'variante_modele_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'variante_tissu_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'variante_tissu_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - diff --git a/product/Coramy/Document/VariatedReference.py b/product/Coramy/Document/VariatedReference.py deleted file mode 100755 index 54d7a2d303be39fa88d7921076f3bcf4cf605b28..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/VariatedReference.py +++ /dev/null @@ -1,247 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5Type.XMLObject import XMLObject -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5Type.Utils import cartesianProduct - -from Products.ERP5.ERP5Globals import resource_type_list - -from zLOG import LOG - -class VariatedReference(XMLObject, XMLMatrix): - """ - VariatedReference defines a reference which - can take multiples values depending of the variations of a resource - - Maybe defined by mapped values inside the resource - """ - - meta_type = 'CORAMY Variated Reference' - portal_type = 'Variated Reference' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.SimpleItem - , PropertySheet.VariatedReference - ) - - # Declarative interfaces - __implements__ = ( Interface.Variated, ) - - # Local property sheet - _properties = ( - { 'id' : 'variation_base_category', - 'storage_id' : 'variation_base_category_list', # Coramy Compatibility - 'description' : "", - 'type' : 'tokens', - 'acquisition_portal_type' : resource_type_list, - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_sync_value' : 0, - 'acquisition_accessor_id' : 'getVariationBaseCategoryList', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -A VariatedReference.""" - , 'icon' : 'variated_reference_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVariatedReference' - , 'immediate_view' : 'variated_reference_view' - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'transformed_resource_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'variated_reference_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_view' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - ### Variation matrix definition - # - security.declareProtected(Permissions.ModifyPortalContent, '_setReferenceVariationBaseCategoryList') - def _setReferenceVariationBaseCategoryList(self, value): - """ - Defines the possible base categories which the reference - variates on - """ - # XXX - may be incompatible with future versions of ERP5 - self.reference_variation_base_category_list = value - kwd = {} - kwd['base_id'] = self.getReferenceType() - kw = [] - resource = self.aq_parent - line_id = 'coloris' - column_id = 'taille' - line = [[None]] - column = [[None]] - - for v in value: - if v == line_id: - line = [resource.getVariationRangeCategoryItemList(base_category_list = line_id, base=0)] - elif v == column_id: - column = [resource.getVariationRangeCategoryItemList(base_category_list = column_id, base=0)] - else: - kw += [resource.getVariationRangeCategoryItemList(base_category_list = v, base=0)] - kw = line + column + kw - self.setCellRange(*kw, **kwd) - # Empty cells if no variation - if line == [[None]] and column == [[None]]: - self.delCells(base_id=self.getReferenceType()) - # And fix it in case the cells are not renamed (XXX this will be removed in the future) - # self._checkConsistency(fixit=1) - - security.declareProtected(Permissions.ModifyPortalContent, 'setReferenceVariationBaseCategoryList') - def setReferenceVariationBaseCategoryList(self, value): - """ - Defines the possible base categories which Quantity value (Q) - variate on and reindex the object - """ - self._setReferenceVariationBaseCategoryList(value) - self.reindexObject() - - # Methods for matrix UI widgets - security.declareProtected(Permissions.AccessContentsInformation, 'getLineItemList') - def getLineItemList(self): - base_category = 'coloris' - if base_category in self.getReferenceVariationBaseCategoryList(): - clist = self.aq_parent.getVariationRangeCategoryItemList(base_category, base=0) - else: - clist = [None] - result = [] - for c in clist: - result += [(c,c)] - return result - - security.declareProtected(Permissions.AccessContentsInformation, 'getColumnItemList') - def getColumnItemList(self): - base_category = 'taille' - if base_category in self.getReferenceVariationBaseCategoryList(): - clist = self.aq_parent.getCategoryMembershipList(base_category, base=1) - else: - clist = [None] - result = [] - for c in clist: - result += [(c,c)] - return result - - security.declareProtected(Permissions.AccessContentsInformation, 'getTabItemList') - def getTabItemList(self): - resource = self.aq_parent - line_id = 'coloris' - column_id = 'taille' - base_category_list = resource.getVariationBaseCategoryList() - base_category = [] - for c in base_category_list: - if not c in (line_id, column_id): - if c in self.getReferenceVariationBaseCategoryList(): - base_category += [resource.getVariationRangeCategoryItemList(c, base=0)] - if len(base_category) > 0: - clist = cartesianProduct(base_category) - result = [] - for c in clist: - result += [(c,c)] - else: - result = [(None,'')] - return result - - security.declareProtected( Permissions.ModifyPortalContent, 'newCell' ) - def newCell(self, *kw, **kwd): - result = XMLMatrix.newCell(self, *kw, **kwd) - result._setPredicateOperator("SUPERSET_OF") - membership_list = [] - for c in kw: - if c is not None: - membership_list += [c] - result._setPredicateValueList(membership_list) - base_id = kwd.get('base_id', 'cell') - result._setDomainBaseCategoryList(self.getReferenceVariationBaseCategoryList()) - return result - - security.declareProtected( Permissions.ModifyPortalContent, 'newCellContent' ) - def newCellContent(self, id): - """ - This method can be overriden - """ - self.invokeFactory(type_name="Set Mapped Value",id=id) - return self.get(id) - - -from Products.Coramy.Document.SetMappedValue import SetMappedValue - -class SetMappedValuePatch(SetMappedValue): - - def getEan13Code(self): - """ - returns ean13 code for Coramy - """ - if hasattr(self, 'code_ean13'): - return self.code_ean13 - return self._baseGetEan13Code() - -SetMappedValue.getEan13Code = SetMappedValuePatch.getEan13Code diff --git a/product/Coramy/Document/Vetement.py b/product/Coramy/Document/Vetement.py deleted file mode 100755 index c374359384089c5b9d9dff94e31ae07b040ce830..0000000000000000000000000000000000000000 --- a/product/Coramy/Document/Vetement.py +++ /dev/null @@ -1,261 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry_Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - -from Globals import InitializeClass, PersistentMapping -from AccessControl import ClassSecurityInfo - -from Products.ERP5Type import Permissions, PropertySheet, Constraint, Interface -from Products.ERP5.Document.Resource import Resource -from Products.CMFCore.WorkflowCore import WorkflowMethod -from Products.ERP5Type.XMLMatrix import XMLMatrix -from Products.ERP5.Document.Domain import Domain - -class Vetement(Resource, XMLMatrix): - """ - un vetement.. - """ - - meta_type = 'CORAMY Vetement' - portal_type = 'Vetement' - add_permission = Permissions.AddPortalContent - isPortalContent = 1 - isRADContent = 1 - - # Declarative security - security = ClassSecurityInfo() - security.declareObjectProtected(Permissions.View) - - # Declarative properties - property_sheets = ( PropertySheet.Base - , PropertySheet.XMLObject - , PropertySheet.CategoryCore - , PropertySheet.DublinCore - , PropertySheet.Vetement - , PropertySheet.PresentAuCatalogue - ) - - # Hard Wired Variation List - # XXX - may be incompatible with future versions of ERP5 - variation_base_category_list = ('taille',) - - # Factory Type Information - factory_type_information = \ - { 'id' : portal_type - , 'meta_type' : meta_type - , 'description' : """\ -un vetement...""" - , 'icon' : 'vetement_icon.gif' - , 'product' : 'Coramy' - , 'factory' : 'addVetement' - , 'immediate_view' : 'vetement_view' - , 'allow_discussion' : 1 - , 'allowed_content_types': ('Morceau', - ) - , 'filter_content_types' : 1 - , 'global_allow' : 1 - , 'actions' : - ( { 'id' : 'view' - , 'name' : 'View' - , 'category' : 'object_view' - , 'action' : 'vetement_view' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'list' - , 'name' : 'Object Contents' - , 'category' : 'object_action' - , 'action' : 'folder_contents' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'print' - , 'name' : 'Print' - , 'category' : 'object_print' - , 'action' : 'object_print' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'metadata' - , 'name' : 'Metadata' - , 'category' : 'object_edit' - , 'action' : 'metadata_edit' - , 'permissions' : ( - Permissions.View, ) - } - , { 'id' : 'translate' - , 'name' : 'Translate' - , 'category' : 'object_action' - , 'action' : 'translation_template_view' - , 'permissions' : ( - Permissions.TranslateContent, ) - } - ) - } - - security.declareProtected( Permissions.ModifyPortalContent, 'newCellContent' ) - def newCellContent(self, id): - """ - This method can be overriden - """ - self.invokeFactory(type_name="Set Mapped Value",id=id) - return self.get(id) - - security.declareProtected(Permissions.ModifyPortalContent, '_setMatrixCellRange') - def _setMatrixCellRange(self): - line = self.getCategoryMembershipList('mesure_vetement',base=0) - if len(line) == 0 : - line = [None] - column = self.getCategoryMembershipList('taille',base=0) - if len(column) == 0 : - column = [None] - self._setCellRange(line, column, base_id='mesure_coramy') - # Empty cells if no variation - if line == [[None]] and column == [[None]]: - self.delCells(base_id='mesure_coramy') - # And fix it in case the cells are not renamed (XXX this will be removed in the future) - self._checkConsistency(fixit=1) - - security.declareProtected(Permissions.ModifyPortalContent, 'setMatrixCellRange') - def setMatrixCellRange(self): - """ - Defines the possible variations which taille_client value - variate on and reindex the object - """ - self._setMatrixCellRange() - self.reindexObject() - - security.declareProtected(Permissions.ModifyPortalContent, '_setTailleList') - def _setTailleList(self,value): - self._categorySetTailleList(value) - self._setMatrixCellRange() - - security.declareProtected(Permissions.ModifyPortalContent, '_setMesureVetementList') - def _setMesureVetementList(self,value): - self._categorySetMesureVetementList(value) - self._setMatrixCellRange() - - def _setTitle(self, value): - """ - Here we see that we must define an notion - of priority in the way fields are updated - """ - if value != self.getTitle(): - self.title = value - - security.declareProtected(Permissions.View, 'getTitle') - def getTitle(self): - """ - Returns the title if it exists or a combination of - first name and last name - """ - if self.title == '': - return self.getId() - else: - return self.title - Title = getTitle - - security.declareProtected(Permissions.ModifyPortalContent, 'setTitle') - def setTitle(self, value): - """ - Updates the title if necessary - """ - self._setTitle(value) - self.reindexObject() - - def _StateEtude2Prototype(self): - """ - This method is called by modele_worflow - to update vetement workflow - """ - return 'toto' - - security.declarePublic( 'StateEtude2Prototype' ) - StateEtude2Prototype = WorkflowMethod(_StateEtude2Prototype,id='auto_lancer_prototype') - - def _StateEtude2BaseOk(self): - """ - This method is called by modele_worflow - to update vetement workflow - """ - return 'toto' - - security.declarePublic( 'StateEtude2BaseOk' ) - StateEtude2BaseOk = WorkflowMethod(_StateEtude2BaseOk,id='auto_valider_base') - - def _StateBaseOk2EtudeGrada(self): - """ - This method is called by modele_worflow - to update vetement workflow - """ - return 'toto' - - security.declarePublic( 'StateBaseOk2EtudeGrada' ) - StateBaseOk2EtudeGrada = WorkflowMethod(_StateBaseOk2EtudeGrada,id='auto_etudier_gradation') - - def _StateEtudeGrada2Valide(self): - """ - This method is called by modele_worflow - to update vetement workflow - """ - return 'toto' - - security.declarePublic( 'StateEtudeGrada2Valide' ) - StateEtudeGrada2Valide = WorkflowMethod(_StateEtudeGrada2Valide,id='auto_valider_gradation') - - # Inheritance solving - security.declareProtected(Permissions.ModifyPortalContent, 'checkConsistency') - checkConsistency = XMLMatrix.checkConsistency - - security.declarePrivate('_checkConsistency') - def _checkConsistency(self, fixit=0): - """ - Check the constitency of transformation elements - """ - error_list = XMLMatrix._checkConsistency(self, fixit=fixit) - - # First quantity - # We build an attribute equality and look at all cells - constraint = Constraint.AttributeEquality( - domain_base_category_list = ('mesure_vetement',), - predicate_operator = 'SUPERSET_OF', - mapped_value_property_list = ['mesure_coramy'] ) - for k in self.getCellKeys(base_id = 'mesure_coramy'): - kw={} - kw['base_id'] = 'mesure_coramy' - c = self.getCell(*k, **kw) - if c is not None: - predicate_value = [] - for p in k: - if p is not None: predicate_value += [p] - constraint.edit(predicate_value_list = predicate_value) - if fixit: - error_list += constraint.fixConsistency(c) - else: - error_list += constraint.checkConsistency(c) - - return error_list diff --git a/product/Coramy/Document/__init__.py b/product/Coramy/Document/__init__.py deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/Extensions/BuildInventory.py b/product/Coramy/Extensions/BuildInventory.py deleted file mode 100755 index 0de8af7b90480fb1bec1041197122b7bf8d55dfa..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/BuildInventory.py +++ /dev/null @@ -1,39 +0,0 @@ -# this script creates an inventory for each supplier -# and places all the resource provided by the supplier in this inventory -from DateTime import DateTime -from zLOG import LOG - -def Inventory_buildInventories(self, start_at=0,REQUEST=None): - """ - build inventories - """ - context=self - - inventory_module = context.inventaire_mp - - my_supplier_item_list = context.Resource_getSupplierItemList() - my_supplier_title_list = map(lambda x:x[0], my_supplier_item_list) - - #for supplier in my_supplier_title_list[int(start_at):min(int(start_at)+20,len(my_supplier_title_list))] : - for supplier in my_supplier_title_list: - # create inventory - new_inventory_id = str(inventory_module.generateNewId()) - my_categories = ['destination/site/Stock_MP/Gravelines','destination_section/group/Coramy'] - context.portal_types.constructContent(type_name = 'Inventory MP', - container = inventory_module, - id = new_inventory_id, - description = supplier, - start_date = DateTime(), - categories = my_categories) - inventory = inventory_module[new_inventory_id] - - # create all inventory lines - #try: - # inventory.InventoryMP_massiveAddLine(product_reference_list=[], supplier_list=[supplier]) - #except: - # LOG('Inventory_buildInventories Error',0,'supplier: %s, ERROR ON id: %s' % (str(supplier),new_inventory_id)) - - LOG('Inventory_buildInventories Ok',0,'New inventory created: %s' % str(new_inventory_id)) - get_transaction().commit() - - diff --git a/product/Coramy/Extensions/CodeArticleClient.py b/product/Coramy/Extensions/CodeArticleClient.py deleted file mode 100755 index f02ca87441dcd6dad1ee195d01ff94fdd9d54b82..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/CodeArticleClient.py +++ /dev/null @@ -1,85 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -code_article_client = {} - -def getCodeArticleClient(self) : - """ - Add as extension Amount_getCodeArticleClient - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - - if resource_value is None: - return '' - else : - variated_reference_list = resource_value.contentValues(filter={'portal_type':'Variated Reference'}) - # we search a variated_reference wich define 'code_article' - my_variated_reference = None - for variated_reference in variated_reference_list : - if len(variated_reference.getMappedValuePropertyList()) <> 0 : - if variated_reference.getMappedValuePropertyList()[0] == 'code_article' : - my_variated_reference = variated_reference - break - - predicate_value = [] - if my_variated_reference is not None : - base_category_list = my_variated_reference.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - if 'morphologie' in base_category_list and morphologie : - predicate_value.append('morphologie/'+morphologie) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if code_article_client.has_key(key): - return code_article_client[key] # This is an infinite cache - - # Build cache - if my_variated_reference is not None : - mapped_value_list = my_variated_reference.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - code_article_client[new_key] = cell.getProperty(key='code_article') - else : - return '' - - if code_article_client.has_key(key): - return code_article_client[key] - - return '' - -def getCodeArticleClientKeyList(): - return str(code_article_client.keys()) diff --git a/product/Coramy/Extensions/CodeEan13Client.py b/product/Coramy/Extensions/CodeEan13Client.py deleted file mode 100755 index 52f05030d8fc8b6c8ffc36e4c41bb74efc858ae5..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/CodeEan13Client.py +++ /dev/null @@ -1,85 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -code_ean13_client = {} - -def getCodeEan13Client(self) : - """ - Add as extension Amount_getCodeEan13Client - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - - if resource_value is None: - return '' - else : - variated_reference_list = resource_value.contentValues(filter={'portal_type':'Variated Reference'}) - # we search a variated_reference wich define 'code_ean13' - my_variated_reference = None - for variated_reference in variated_reference_list : - if len(variated_reference.getMappedValuePropertyList()) <> 0 : - if variated_reference.getMappedValuePropertyList()[0] == 'code_ean13' : - my_variated_reference = variated_reference - break - - predicate_value = [] - if my_variated_reference is not None : - base_category_list = my_variated_reference.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - if 'morphologie' in base_category_list and morphologie : - predicate_value.append('morphologie/'+morphologie) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if code_ean13_client.has_key(key): - return code_ean13_client[key] # This is an infinite cache - - # Build cache - if my_variated_reference is not None : - mapped_value_list = my_variated_reference.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - code_ean13_client[new_key] = cell.getProperty(key='code_ean13') - else : - return resource_value.getCodeEan13('') - - if code_ean13_client.has_key(key): - return code_ean13_client[key] - - return '' - -def getCodeEan13ClientKeyList(): - return str(code_ean13_client.keys()) diff --git a/product/Coramy/Extensions/CodeModeleClient.py b/product/Coramy/Extensions/CodeModeleClient.py deleted file mode 100755 index f5e67218e2ddd1abb84645c8ac17ac78c51f77c9..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/CodeModeleClient.py +++ /dev/null @@ -1,85 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -code_modele_client = {} - -def getCodeModeleClient(self) : - """ - Add as extension Amount_getCodeModeleClient - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - - if resource_value is None: - return '' - else : - variated_reference_list = resource_value.contentValues(filter={'portal_type':'Variated Reference'}) - # we search a variated_reference wich define 'code_modele' - my_variated_reference = None - for variated_reference in variated_reference_list : - if len(variated_reference.getMappedValuePropertyList()) <> 0 : - if variated_reference.getMappedValuePropertyList()[0] == 'code_modele' : - my_variated_reference = variated_reference - break - - predicate_value = [] - if my_variated_reference is not None : - base_category_list = my_variated_reference.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - if 'morphologie' in base_category_list and morphologie : - predicate_value.append('morphologie/'+morphologie) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if code_modele_client.has_key(key): - return code_modele_client[key] # This is an infinite cache - - # Build cache - if my_variated_reference is not None : - mapped_value_list = my_variated_reference.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - code_modele_client[new_key] = cell.getProperty(key='code_modele') - else : - return resource_value.getDestinationReference('') - - if code_modele_client.has_key(key): - return code_modele_client[key] - - return resource_value.getDestinationReference('') - -def getCodeModeleClientKeyList(): - return str(code_modele_client.keys()) diff --git a/product/Coramy/Extensions/ColorisClient.py b/product/Coramy/Extensions/ColorisClient.py deleted file mode 100755 index 6e8ba957b5f144e7cc18572dd773058b67187bee..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ColorisClient.py +++ /dev/null @@ -1,110 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -coloris_client = {} - -def getColorisClient(self) : - """ - Add as extension Amount_getColorisClient - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - coloris_value = self.getColorisValue() - - if resource_value is None: - return '' - else : - variated_reference_list = resource_value.contentValues(filter={'portal_type':'Variated Reference'}) - # we search a variated_reference wich define 'code_coloris' - my_variated_reference = None - for variated_reference in variated_reference_list : - if len(variated_reference.getMappedValuePropertyList()) <> 0 : - if variated_reference.getMappedValuePropertyList()[0] == 'code_coloris' : - my_variated_reference = variated_reference - break - - predicate_value = [] - if my_variated_reference is not None : - base_category_list = my_variated_reference.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - if 'morphologie' in base_category_list and morphologie : - predicate_value.append('morphologie/'+morphologie) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if coloris_client.has_key(key): - return coloris_client[key] # This is an infinite cache - - # Build cache - if my_variated_reference is not None : - mapped_value_list = my_variated_reference.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - coloris_client[new_key] = cell.getProperty(key='code_coloris') - else : - if coloris_value is not None : - if not coloris_value.getDestinationReference() in (None, '') : - return coloris_value.getDestinationReference('') - else : - if coloris is not None : - return coloris.split('/')[-1] - else : - return '' - else : - if coloris is not None : - return coloris.split('/')[-1] - else : - return '' - - if coloris_client.has_key(key): - return coloris_client[key] - - if coloris_value is not None : - if not coloris_value.getDestinationReference() in (None, '') : - return coloris_value.getDestinationReference('') - else : - if coloris is not None : - return coloris.split('/')[-1] - else : - return '' - else : - if coloris is not None : - return coloris.split('/')[-1] - else : - return '' - -def getColorisClientKeyList(): - return str(coloris_client.keys()) diff --git a/product/Coramy/Extensions/ConstructAndSendMail.py b/product/Coramy/Extensions/ConstructAndSendMail.py deleted file mode 100755 index b6054e8080aa6a27a4acbeb2e5affc3d176b0b28..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ConstructAndSendMail.py +++ /dev/null @@ -1,135 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Coramy SAS and Contributors. All Rights Reserved. -# Romain Courteaud <Romain_Courteaud@coramy.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -#http://www.zopera.org/Members/grival/mailavecpiecejointe/view -# http://www.pythonapocrypha.com/Chapter17/Chapter17.shtml - -import StringIO -import MimeWriter -import base64 -import multifile -import mimetools -import mimetypes - -def sendMail(self, mMsg, mTo, mFrom, mSubj, attachmentList=None ): - - # get the mailhost object - try: - mailhost=getattr(self, self.portal_url.superValues('Mail Host')[0].id) - except: - raise AttributeError, "Cannot find a Mail Host object" - else: - - # XXX can t see the message with sylpheed ... - # no attachment means no mime message - #if attachmentList==None: - # mailhost.send(mMsg,mTo,mFrom,mSubj) - - # construct the mime message - #else: - if 1==1: - # Create multi-part MIME message. - message = StringIO.StringIO() - writer = MimeWriter.MimeWriter(message) - - writer.addheader('From', mFrom) - writer.addheader('To', mTo) - writer.addheader('Subject', mSubj) - writer.addheader('MimeVersion', '1.0') - # Don't forget to flush the headers for Communicator - writer.flushheaders() - # Generate a unique section boundary: - outer_boundary=mimetools.choose_boundary() - - # Start the main message body. Write a brief message - # for non-MIME-capable readers: - dummy_file=writer.startmultipartbody("mixed",outer_boundary) - dummy_file.write("If you can read this, your mailreader\n") - dummy_file.write("can not handle multi-part messages!\n") - #dummy_file.write("This is a multi-part message in MIME format.\n") - - submsg = writer.nextpart() - submsg.addheader("Content-Transfer-Encoding", "7bit") - FirstPartFile=submsg.startbody("text/plain", [("charset","US-ASCII")]) - FirstPartFile.write(mMsg) - - - - if attachmentList!=None: - # attachment: { 'name': , 'content': , 'mime_type': } - for attachment in attachmentList: - - if attachment.has_key('name'): - attachment_name = attachment['name'] - else: - attachment_name = '' - - # try to guess the mime type - if not attachment.has_key('mime_type'): - type, encoding = mimetypes.guess_type( attachment_name ) - - if type != None: - attachment['mime_type'] = type - else: - attachment['mime_type'] = 'application/octet-stream' - - - - - # attach it - submsg = writer.nextpart() - - if attachment['mime_type'] == 'text/plain': - attachment_file = StringIO.StringIO( attachment['content'] ) - - submsg.addheader("Content-Transfer-Encoding", "7bit") - submsg.addheader("Content-Disposition", "attachment;\nfilename="+attachment_name) - submsg.flushheaders() - - f = submsg.startbody(attachment['mime_type'] , [("name", attachment_name)]) - f.write(attachment_file.getvalue()) - - else: - # encode non-plaintext attachment in base64 - attachment_file = StringIO.StringIO( attachment['content'] ) - submsg.addheader("Content-Transfer-Encoding", "base64") - submsg.flushheaders() - - f = submsg.startbody(attachment['mime_type'] , [("name", attachment_name)]) - base64.encode(attachment_file, f) - - # close the writer - writer.lastpart() - - # send mail to user - mailhost.send(message.getvalue(),mTo,mFrom) - - return None - - - - - - - - diff --git a/product/Coramy/Extensions/DelAttr.py b/product/Coramy/Extensions/DelAttr.py deleted file mode 100755 index f06895f8c152b1e9446f1cebae650f2fc3d48767..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/DelAttr.py +++ /dev/null @@ -1,4 +0,0 @@ -def deleteAttribute(self, id=None): - if id is not None: - delattr(self, id) - diff --git a/product/Coramy/Extensions/ExportEdiAuchan.py b/product/Coramy/Extensions/ExportEdiAuchan.py deleted file mode 100755 index 3de74a4b5399f81389528b728e58d5db9395ebd2..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ExportEdiAuchan.py +++ /dev/null @@ -1,76 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Coramy SAS and Contributors. All Rights Reserved. -# Romain Courteaud <Romain_Courteaud@coramy.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -import os,string -from os import access,W_OK - -# We first should look to the export folder -base_directory_path = '/mnt/edi' -export_directory_path = os.path.join(base_directory_path, 'Depart') - -def exportEdiAuchanFile(self, user_name=None, ending_mail=0): - import os, string - from os import access,W_OK - - file_name = 'exportEdiAuchan_' + self.getId() + '.env' - file_path = os.path.join(export_directory_path, file_name) - - try: - resultTmp = self.SalesPackingList_exportEdiAuchan( batch_mode=1 ) - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Erreur d exécution, export Edi annulé",mMsg=file_path) - else: - - try: - # open the file - file = open( file_path , 'w') - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible d ouvrir le fichier Edi : contactez Romain",mMsg=file_path) - - try: - # export the file - file.write( resultTmp ) - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible d écrire le fichier Edi : contactez Romain",mMsg=file_path) - - try: - # close - file.close() - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible de fermer le fichier Edi : contactez Romain",mMsg=file_path) - - if ending_mail: - mMsg = '' - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Export de l edi Auchan terminé",mMsg=mMsg) - - -""" -test the directory -""" -def exportEdiAuchanTestDirectory(self ): - import os, string - from os import access,W_OK - - # test the directory - return access(export_directory_path, W_OK) - diff --git a/product/Coramy/Extensions/ImportEdiFileList.py b/product/Coramy/Extensions/ImportEdiFileList.py deleted file mode 100755 index d0537f7840aca9f8015b3d35f0e1729b6db9e903..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ImportEdiFileList.py +++ /dev/null @@ -1,140 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Coramy SAS and Contributors. All Rights Reserved. -# Romain Courteaud <Romain_Courteaud@coramy.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -import os, string -from DateTime import DateTime -from ZPublisher.HTTPRequest import FileUpload -from cgi import FieldStorage -from os import access,W_OK - -# We first should look to the import folder -base_directory_path = '/mnt/edi' -import_directory_path = os.path.join(base_directory_path, 'Arrivee') - -#if not os.path.exists(import_directory_path ): -# os.mkdir( import_directory_path ) - - -def importEdiFile(self, file_path=None, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None, user_name=None): - import os, string - from DateTime import DateTime - from ZPublisher.HTTPRequest import FileUpload - from cgi import FieldStorage - from os import access,W_OK - - - try: - # open the file - file = open( file_path , 'r') - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible d ouvrir le fichier Edi",mMsg=file_path) - - try: - # create the correct parameter - form=FieldStorage() - form.filename = file_path - form.file = file - import_file = FileUpload(form) - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible de lire le fichier Edi",mMsg=file_path) - - else: - - if access(file_path, W_OK): - try: - - # import the file - resultTmp = self.SalesOrder_importEdi(import_file=import_file, delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration, batch_mode=1,user_name=user_name) - - except: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Erreur d execution, import Edi annulé",mMsg=file_path) - else: - # test the result - file.close() - if resultTmp[1] == None: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Fichier non valide, import Edi annulé",mMsg=file_path) - else: - #self.Coramy_sendMailToUser(user_name=user_name,mSubj="Import réussi",mMsg=resultTmp[0]) - #get_transaction().commit() - os.remove(file_path) - - - else: - file.close() - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible d effacer le fichier Edi, import annulé",mMsg=file_path) - -""" -test the directory and creation of all the messages -""" -def importEdiFileListTestAndStart(self, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None, user_name=None ): - import os, string - from DateTime import DateTime - from ZPublisher.HTTPRequest import FileUpload - from cgi import FieldStorage - from os import access,W_OK - - # test the directory - if access(import_directory_path, W_OK): - #self.Coramy_sendMailToUser(user_name=user_name,mSubj="Lancement de l import en masse ",mMsg=import_directory_path) - - files_list = os.listdir(import_directory_path) - - for file_name in files_list: - file_path = os.path.join(import_directory_path, file_name) - - self.activate(activity="SQLQueue", priority=4).SalesOrder_importEdiFile(file_path=file_path, delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration, user_name=user_name ) - - - else: - self.Coramy_sendMailToUser(user_name=user_name,mSubj="Impossible d ecrire sur le repertoire d import, import annule",mMsg=import_directory_path) - -""" -this allows to import many edi files at the same time -no more used -""" -""" -def importEdiFileList(self, REQUEST,file_path=None, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None, batch_mode=0): - - user_name = self.portal_membership.getAuthenticatedMember().getUserName() - # test the directory - # can't be good, because this test is done on TinyLeon, and the message is done on SumicomA - if access(import_directory_path, W_OK): - - files_list = os.listdir(import_directory_path) - - for file_name in files_list: - file_path = os.path.join(import_directory_path, file_name) - - self.activate(activity="SQLQueue").SalesOrder_importEdiFile(file_path=file_path, delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration, user_name=user_name ) - - redirect_url = '%s?%s' % ( self.absolute_url()+'/'+'view', 'portal_status_message=Import+des+fichiers+EDI+lancé.') - - else: - redirect_url = '%s?%s%s' % ( self.absolute_url()+'/'+'view', "portal_status_message=Annulation:+impossible+d+écrire+sur+le+répertoire+d'import+",import_directory_path) - - - if batch_mode: - return None - else: - REQUEST[ 'RESPONSE' ].redirect( redirect_url ) -""" diff --git a/product/Coramy/Extensions/ImportEdiFiles.py b/product/Coramy/Extensions/ImportEdiFiles.py deleted file mode 100755 index 59002cab0cc47a1a9767759f5aba2f03502bc2a7..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ImportEdiFiles.py +++ /dev/null @@ -1,147 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Coramy SAS and Contributors. All Rights Reserved. -# Romain Courteaud <Romain_Courteaud@coramy.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -import os, string -from DateTime import DateTime -from ZPublisher.HTTPRequest import FileUpload -from cgi import FieldStorage -from os import access,W_OK - -# We first should look to the import folder -base_directory_path = '/mnt/edi' -import_directory_path = os.path.join(base_directory_path, 'Arrivee') -log_directory_path = base_directory_path - -if not os.path.exists(import_directory_path ): - os.mkdir( import_directory_path ) -if not os.path.exists(log_directory_path ): - os.mkdir( log_directory_path ) - - -def importEdiFile(object=None, file_path=None, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None): - - resultTab = [] - - result = '' - result = result + '\n--------------------------------------------\n' - result = result + file_path + '\n' - result = result + DateTime().strftime("%a, %Y %B %d %H:%M:%S") - - if access(file_path, W_OK): - - # open the file - file = open( file_path , 'r') - - # create the correct parameter - form=FieldStorage() - form.filename = file_path - form.file = file - import_file = FileUpload(form) - - # import the file - resultTmp = object.SalesOrder_importEdi(import_file=import_file, delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration, batch_mode=1) - - file.close() - - # test the result - #if resultTmp == None: - get_transaction().commit() - if resultTmp[1] == None: - result = result + '\n' + 'Fichier non valide\n' - resultTab += [(0,result,None)] - else: - result = result + '\n' + resultTmp[1] - os.remove(file_path) - #resultTab += [(1,result)] - resultTab += [(1,result,resultTmp[0])] - - - else: - result += '\nPas d acces en ecriture\n' - resultTab += [(0,result,None)] - - - return resultTab - - -""" -this allows to import many edi files by the same time -""" -def importEdiFileList(self, REQUEST,file_path=None, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None, batch_mode=0): - - result = '' - result += '############################################################################## \n' - result += 'Tentative d import\n'+ DateTime().strftime("%a, %Y %B %d %H:%M:%S")+'\n' - result += '############################################################################## \n' - - edi_files_number = 0 - uid_list = [] - - # test the log file - if access(log_directory_path, W_OK): - - files_list = os.listdir(import_directory_path) - - - tab = [] - - for file_name in files_list: - file_path = os.path.join(import_directory_path, file_name) - - tab += importEdiFile(object=self, file_path=file_path, delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration ) - - - - for comment in tab: - if comment[0]: - edi_files_number += 1 - result += comment[1] - if comment[2] != None: - uid_list.append(comment[2]) - - # write the log file - log_path = os.path.join(log_directory_path, 'importEdiERP5.log') # C'est mal XXX - il y a LOG de Zope, le mail ou solution CMFActivity - # Ce n'est pas compatible avec du multi utilisateur - log_file = open(log_path,'a') - log_file.write(result) - """ - log_file.write('UID:\n') - for uid in uid_list: - if uid == None: - log_file.write('None\n') - else: - log_file.write('%i\n' % uid) - """ - log_file.close() - - else: - result += 'Ne peut ecrire le fichier de log\n' - - - if batch_mode: - return result - else: - self.flushActivity(invoke=1) - self.portal_selections.setSelectionToIds('sales_order_selection', uid_list, REQUEST=self.REQUEST) - redirect_url = '%s?%s%i%s' % ( self.absolute_url()+'/'+'view', 'portal_status_message=',edi_files_number ,' Fichiers+EDI+importés.') - REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/Extensions/ImportExportSkins.py b/product/Coramy/Extensions/ImportExportSkins.py deleted file mode 100755 index 75af3df9cf3a3e550a28263b8a4ac083e19d66be..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ImportExportSkins.py +++ /dev/null @@ -1,19 +0,0 @@ -# Import Export - -from Products.ERP5.Extensions.ImportExportSkins import importSkins -from Products.ERP5.Extensions.ImportExportSkins import exportSkins - -fs_skin_ids = ('coramy_custom','coramy_trade', 'coramy_crm', 'coramy_manufacturing', - 'coramy_pdm','coramy_erp5','coramy_list_method','coramy_mrp') -fs_skin_dir = '/var/lib/zope/Products/Coramy/skins' -zodb_skin_ids = ('local_custom','local_trade', 'local_crm', 'local_manufacturing', - 'local_pdm','local_erp5','local_list_method','local_mrp') - -def importCoramySkins(self, REQUEST=None): - return importSkins(self, REQUEST=REQUEST, fs_skin_ids=fs_skin_ids, \ - zodb_skin_ids=zodb_skin_ids, \ - fs_skin_dir=fs_skin_dir) -def exportCoramySkins(self, REQUEST=None): - return exportSkins(self, REQUEST=REQUEST, fs_skin_ids=fs_skin_ids, \ - zodb_skin_ids=zodb_skin_ids, \ - fs_skin_dir=fs_skin_dir) diff --git a/product/Coramy/Extensions/ItemStat.py b/product/Coramy/Extensions/ItemStat.py deleted file mode 100755 index 20446d10dab95fa07d53167b23f2e5859a0e18ce..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/ItemStat.py +++ /dev/null @@ -1,17 +0,0 @@ -def getAvailableItemStat(self, **kw): - result = self.PieceTissu_zGetAvailableItemList(**kw) - if len(result) > 100: - return "Trop de pièces" - remaining_quantity = 0.0 - for m in result: - o = m.getObject() - if o is not None: - remaining_quantity += o.getRemainingQuantity() - - class r: - pass - - ri = r() - ri.getRemainingQuantity = remaining_quantity - - return [ri] diff --git a/product/Coramy/Extensions/MigrateContent.py b/product/Coramy/Extensions/MigrateContent.py deleted file mode 100755 index ffc350c664fbc79cf76b2f8b3068b7d715626ab7..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/MigrateContent.py +++ /dev/null @@ -1,120 +0,0 @@ -############################################################################## -# -# Base18: a Zope product which provides multilingual services for CMF Default -# documents. -# -# Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved. -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -""" - Converts ERP5 Set Mapped Value to Coramy SetMappedValue. -""" - -# Source -import Products.ERP5.Document.SetMappedValue - -# Destination -import Products.Coramy.Document.SetMappedValue - -# -import re -from zLOG import LOG - -################################################################################## -# This is a set of methods in order to upgrade ERP5 Mapped Value to Coramy's one # -################################################################################## - -def test_before(object): - return 1 - -def test_after(object): - - message = None - # check if aq_base content the attribute 'quantity' is a float - if hasattr(object, 'quantity'): - quantity = object.getQuantity() - if type(quantity) is not type(0.0): - message = 'object is now a %s but XXX quantity is not a float XXX' % object.__class__ - - # if it's a variation, check if there's a definition of color and colory - - if message is None: - message = 'object is now a %s' % object.__class__ - return [(object.getRelativeUrl(), 'upgradeSetMappedValue',102,message)] - -def upgradeSetMappedValue(REQUEST): - """ - Folder needs to be updated in order to take into account - changes of classes and in particular meta_type - """ - #portal_root = getToolByName(self, 'portal_url').getPortalObject() - container = REQUEST.PARENTS[0] - from_class = Products.ERP5.Document.SetMappedValue.SetMappedValue - to_class = Products.Coramy.Document.SetMappedValue.SetMappedValue - return container.upgradeObjectClass(test_before=test_before, from_class=from_class,\ - to_class=to_class, test_after=test_after) - -################################################################################## -# This is a set of methods in order to update default_base_price to base_price # -################################################################################## - -def filter_base_price(object): - object = object.aq_base - #if object.id!='K4011': - # return None - if getattr(object, 'default_base_price', 0.0)!=0.0 and getattr(object, 'base_price',None)==None: - return 1 - elif getattr(object, 'default_additionnal_base_price',0.0)!=0.0 and getattr(object, 'additionnal_base_price',None)==None: - return 1 - else: - return None - -def test_after_base_price(object): - base_object = object.aq_base - message = None - result = [] - if getattr(base_object, 'base_price',0.0)!=0.0: - message = 'object have now an base_price : %s' % str(getattr(base_object,'base_price')) - result += [(object.getRelativeUrl(), 'upgradeDefaultBasePrice',102,message)] - if getattr(base_object, 'additional_price',0.0)!=0.0: - message = 'object have now an additional_price : %s' % \ - str(getattr(base_object,'additional_price')) - result += [(object.getRelativeUrl(), 'upgradeDefaultBasePrice',102,message)] - return result - -def method_base_price(object): - object = object.aq_base - default_base_price = getattr(object, 'default_base_price', 0.0) - if default_base_price != 0.0: - setattr(object, 'base_price', default_base_price) - default_additional_price = getattr(object, 'default_additional_price', 0.0) - if default_additional_price != 0.0: - setattr(object, 'additional_price', default_additional_price) - -def upgradeDefaultBasePrice(REQUEST): - """ - Folder needs to be updated in order to take into account - changes of classes and in particular meta_type - """ - container = REQUEST.PARENTS[0] - return container.updateAll(filter=filter_base_price, method=method_base_price, - test_after=test_after_base_price) diff --git a/product/Coramy/Extensions/PrinterOutput.py b/product/Coramy/Extensions/PrinterOutput.py deleted file mode 100755 index e327746ada26081871c225673126f9e866340930..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/PrinterOutput.py +++ /dev/null @@ -1,26 +0,0 @@ -import sys - -def sendRawToCups(self, printer_name, raw_string, number_copies=1): - """ - Send ouput to printer as raw string - """ - if sys.platform == 'win32': - # No idea what to do at this point - pass - else: - from popen2 import popen2 - import tempfile - tempdir = tempfile.tempdir - tempfile.tempdir = '/tmp' - newraw_path = tempfile.mktemp(suffix='.cups' ) - f = open(newraw_path, 'w') - f.write(raw_string) - f.close() - tempfile.tempdir = tempdir - imgout, imgin = popen2('lp -h 192.1.2.5 -d %s -n %i %s' - % (printer_name, number_copies, newraw_path)) - imgin.write('') - imgin.close() - imgout.read() - imgout.close() - diff --git a/product/Coramy/Extensions/PrixAchatFournisseur.py b/product/Coramy/Extensions/PrixAchatFournisseur.py deleted file mode 100755 index b723363b826c87184daf5543ab886b68879aaa8e..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/PrixAchatFournisseur.py +++ /dev/null @@ -1,100 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -source_price_dict = {} - -def getSupplierPrice(self) : - """ - Add as extension Amount_getSupplierPrice - - self -- an amount (movement, delivery line, etc.) - """ - try : - coloris = self.getColoris() - except : - coloris = None - try : - variante = self.getVariante() - except : - variante = None - try : - resource = self.getResource() - resource_value = self.getResourceValue() - except : - resource = None - resource_value = None - - if resource_value is None: - return 0 - else : - # source price is defined on resource or on variation - predicate_value = [] - if resource_value is not None : - base_category_list = resource_value.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'variante' in base_category_list and variante : - predicate_value.append('variante/'+variante) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if source_price_dict.has_key(key): - return source_price_dict[key] # This is an infinite cache - - # Build cache - if resource_value is not None : - supplier_price = resource_value.getSourceBasePrice() - variation_list = resource_value.contentValues(filter={'portal_type':['Variante Tissu','Variante Composant']}) - if supplier_price is None : - supplier_price = 0 - root_supplier_price = supplier_price - priced_quantity = resource_value.getPricedQuantity() - if priced_quantity not in (None, 0, 1) : - supplier_price = supplier_price / priced_quantity - new_key = tuple([resource]) - source_price_dict[new_key] = supplier_price - # Fill the cache - for variation in variation_list: - if variation.getSourceBasePrice() not in (None, 0) : - supplier_price = variation.getSourceBasePrice() - else : - supplier_price = root_supplier_price - if variation.getPortalType() == 'Variante Tissu' : - predicate_value = ['coloris/' + variation.getRelativeUrl()] - elif variation.getPortalType() == 'Variante Composant' : - predicate_value = ['variante/' + variation.getRelativeUrl()] - else : - prediacte_value = [] - if priced_quantity not in (None, 0, 1) : - supplier_price = supplier_price / priced_quantity - new_key = tuple([resource] + predicate_value) - source_price_dict[new_key] = supplier_price - else : - return 0 - - if source_price_dict.has_key(key): - return source_price_dict[key] - - return 0 - -def getSupplierPriceKeyList(): - return str(source_price_dict.keys()) diff --git a/product/Coramy/Extensions/PrixConsommateur.py b/product/Coramy/Extensions/PrixConsommateur.py deleted file mode 100755 index 2b2a08e47654ab4f3fb58e618f5e07b99e26ccab..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/PrixConsommateur.py +++ /dev/null @@ -1,85 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -prix_consommateur = {} - -def getPrixConsommateur(self) : - """ - Add as extension Amount_getPrixConsommateur - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - - if resource_value is None: - return '0' - else : - variated_reference_list = resource_value.contentValues(filter={'portal_type':'Variated Reference'}) - # we search a variated_reference wich define 'code_ean13' - my_variated_reference = None - for variated_reference in variated_reference_list : - if len(variated_reference.getMappedValuePropertyList()) <> 0 : - if variated_reference.getMappedValuePropertyList()[0] == 'prix_consommateur' : - my_variated_reference = variated_reference - break - - predicate_value = [] - if my_variated_reference is not None : - base_category_list = my_variated_reference.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - if 'morphologie' in base_category_list and morphologie : - predicate_value.append('morphologie/'+morphologie) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if prix_consommateur.has_key(key): - return prix_consommateur[key] # This is an infinite cache - - # Build cache - if my_variated_reference is not None : - mapped_value_list = my_variated_reference.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - prix_consommateur[new_key] = cell.getProperty(key='prix_consommateur') - else : - return '0' - - if prix_consommateur.has_key(key): - return prix_consommateur[key] - - return '0' - -def getPrixConsommateurKeyList(): - return str(prix_consommateur.keys()) diff --git a/product/Coramy/Extensions/PrixRevientIndustriel.py b/product/Coramy/Extensions/PrixRevientIndustriel.py deleted file mode 100755 index f4ecae263ed3f6c471ee13844bb3d3849035bb32..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/PrixRevientIndustriel.py +++ /dev/null @@ -1,75 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -pri_dict = {} - -def getPri(self) : - """ - Add as extension Amount_getPri - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - - if resource_value is None: - return 0 - else : - # pri is defined on each resource - predicate_value = [] - if resource_value is not None : - base_category_list = resource_value.getVariationBaseCategoryList() - if 'coloris' in base_category_list and coloris : - predicate_value.append('coloris/'+coloris) - if 'taille' in base_category_list and taille : - predicate_value.append('taille/'+taille) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if pri_dict.has_key(key): - return pri_dict[key] # This is an infinite cache - - # Build cache - if resource_value is not None : - mapped_value_list = resource_value.contentValues(filter={'portal_type':'Set Mapped Value'}) - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - pri_dict[new_key] = cell.getProperty(key='pri') - else : - return 0 - - if pri_dict.has_key(key): - return pri_dict[key] - - return 0 - -def getPriKeyList(): - return str(pri_dict.keys()) diff --git a/product/Coramy/Extensions/QuickCosting.py b/product/Coramy/Extensions/QuickCosting.py deleted file mode 100755 index 859743b89d58d12441fc9512f13e1c88705d32d8..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/QuickCosting.py +++ /dev/null @@ -1,13 +0,0 @@ -def getQuickCostingStat(self, **kw): - result = self.Transformation_quickCostingListBuilder(stat_mode=1,**kw) - total = 0 - for m in result: - total += m.transformed_total_price - - class r: - pass - - ri = r() - ri.transformed_total_price = total - - return [ri] diff --git a/product/Coramy/Extensions/TailleClient.py b/product/Coramy/Extensions/TailleClient.py deleted file mode 100755 index ce989bcb49d44f6cfab6ff08e9a0dbdeae08d359..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/TailleClient.py +++ /dev/null @@ -1,87 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -taille_client = {} - -def getTailleClient(self) : - """ - Add as extension Amount_getTailleClient - - self -- an amount (movement, delivery line, etc.) - """ - coloris = self.getColoris() - taille = self.getTaille() - morphologie = self.getMorphologie() - resource = self.getResource() - resource_value = self.getResourceValue() - try : - morpho_type = self.getMorphologieValue().getMorphoType() - except : - morpho_type = None - - if resource_value is None: - if taille is not None : - return taille.split('/')[-1] - else : - return '' - else : - correspondance_taille = resource_value.getSpecialiseValue(portal_type=['Correspondance Tailles']) - predicate_value = [] - if correspondance_taille is not None: - if len(correspondance_taille.getTailleList())>0 and taille : - predicate_value.append(taille) - if len(correspondance_taille.getMorphoTypeList())>0 and morphologie : - predicate_value.append(morpho_type) - predicate_value.sort() - key = tuple([resource] + predicate_value) - if taille_client.has_key(key): - return taille_client[key] # This is an infinite cache - - # Build cache - if correspondance_taille is not None: - mapped_value_list = correspondance_taille.objectValues() - # Fill the cache - for cell in mapped_value_list: - predicate_value = [] - for predicate_value_item in cell.getPredicateValueList(): - if predicate_value_item <> 'value' : - predicate_value.append(predicate_value_item) - predicate_value.sort() - new_key = tuple([resource] + predicate_value) - taille_client[new_key] = cell.getProperty(key='taille_client') - else : - if taille is not None : - return taille.split('/')[-1] - else : - return '' - - if taille_client.has_key(key): - return taille_client[key] - - if taille is not None : - return taille.split('/')[-1] - else : - return '' - -def getTailleClientKeyList(): - return str(taille_client.keys()) diff --git a/product/Coramy/Extensions/TestBuildInventory.py b/product/Coramy/Extensions/TestBuildInventory.py deleted file mode 100755 index 0045a079773fe83cc158b78d2fe00298d8bd8dce..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/TestBuildInventory.py +++ /dev/null @@ -1,32 +0,0 @@ -# this script creates an inventory for each supplier -# and places all the resource provided by the supplier in this inventory -from DateTime import DateTime -from zLOG import LOG - -def Inventory_testBuildInventories(self, item=0,REQUEST=None): - """ - build inventories - """ - context=self - - inventory_module = context.inventaire_mp - - my_supplier_item_list = context.Resource_getSupplierItemList() - my_supplier_title_list = map(lambda x:x[0], my_supplier_item_list) - - LOG('testBuildInventories',0,'supplier: %s' % str(my_supplier_title_list[item])) - for supplier in my_supplier_title_list[item] : - # create inventory - new_inventory_id = str(inventory_module.generateNewId()) - my_categories = ['destination/site/Stock_MP/Gravelines','destination_section/group/Coramy'] - context.portal_types.constructContent(type_name = 'Inventory MP', - container = inventory_module, - id = new_inventory_id, - description = supplier, - start_date = DateTime(), - categories = my_categories) - inventory = inventory_module[new_inventory_id] - - # create all inventory lines - inventory.InventoryMP_fastAddLine(product_reference_list=[], supplier_list=[supplier]) - diff --git a/product/Coramy/Extensions/UpdateQuantityUnit.py b/product/Coramy/Extensions/UpdateQuantityUnit.py deleted file mode 100755 index 263e4cf210e12e488183a4fba9c8a8f15e08f4d6..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/UpdateQuantityUnit.py +++ /dev/null @@ -1,66 +0,0 @@ -############################################################################## -# -# Copyright (c) 2003 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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 -# -# This program as such is not intended to be used by end users. 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 Zope Public License (ZPL) Version 2.0 -# -# 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. -# -############################################################################## - -def filterUpdateQuantityUnit(object=None,request=None,**kw): - if object.getPortalType() <> 'Inventory MP' : - return 1 - else : - return 0 - -def testAfterUpdateQuantityUnit(object=None,request=None,**kw): - result = [] - return result - -def methodUpdateQuantityUnit(object=None,request=None,**kw): - result = [] - try: - object.setQuantityUnit('Unite/Cone') - except: - message = 'Object could not be updated' - if hasattr(object,'getRelativeUrl'): - result.append((object.getRelativeUrl(), 'methodUpdateQuantityUnit',101,message)) - elif hasattr(object,'id'): - result.append((object.id, 'methodUpdateQuantityUnit',101,message)) - else: - result.append(('Object with no id', 'methodUpdateQuantityUnit',101,message)) - return result - -def UpdateQuantityUnit(object=None,request=None,**kw): - """ - Folder needs to be updated in order to take into account - changes of classes and in particular meta_type - """ - #container = REQUEST.PARENTS[0] - result = [] - container = object - if hasattr(container,'updateAll'): - result += container.updateAll(filter=filterUpdateQuantityUnit, method=methodUpdateQuantityUnit, - test_after=testAfterUpdateQuantityUnit,request=request) - else: - #for folder in container.objectValues(("ERP5 Folder",)): - for object in container.objectValues(): - if hasattr(object,'updateAll'): - result += object.updateAll(filter=filterUpdateQuantityUnit, method=methodUpdateQuantityUnit, - test_after=testAfterUpdateQuantityUnit,request=request) - - return result diff --git a/product/Coramy/Extensions/cartesianProduct.py b/product/Coramy/Extensions/cartesianProduct.py deleted file mode 100755 index fbd606181978df77a93efdcd601906adeaf91051..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/cartesianProduct.py +++ /dev/null @@ -1 +0,0 @@ -from Products.ERP5Type.Utils import cartesianProduct \ No newline at end of file diff --git a/product/Coramy/Extensions/deliveryTester.py b/product/Coramy/Extensions/deliveryTester.py deleted file mode 100755 index d2dcd1a7533504dd46e5831b31082a5c7dfb259b..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/deliveryTester.py +++ /dev/null @@ -1,25 +0,0 @@ -def explainRootGroup(root_group=None) : - - message = "" - - if root_group is not None : - - # printing result - message += "nombre de OrderGroup : %s" %len(root_group.group_list)+"\n" - for order_group in root_group.group_list : - message += "\t"+"order : %s" %order_group.order+"\n" - message += "nombre de PathGroup : %s" %len(order_group.group_list)+"\n" - for group in order_group.group_list : - message += "\t"+"source : %s _ destination : %s" %(group.source, group.destination)+"\n" - message += "\t"+"source_section : %s _ destination_section : %s" %(group.source_section, group.destination_section)+"\n" - message += "\t"+"nombre de DateGroup : %s" %len(group.group_list)+"\n" - for sub_group in group.group_list : - message += "\t"*2+"start : %s _ stop : %s" %(sub_group.start_date, sub_group.stop_date)+"\n" - message += "\t"*2+"nombre de ResourceGroup : %s" %len(sub_group.group_list)+"\n" - for sub_group2 in sub_group.group_list : - message += "\t"*3+"resource : %s" %sub_group2.resource+"\n" - message += "\t"*3+"nombre de VariantGroup : %s" %len(sub_group2.group_list)+"\n" - for sub_group3 in sub_group2.group_list : - message += "\t"*4+"categories : %s" %str(sub_group3.category_list)+str(len(sub_group3.category_list))+"\n" - - return message diff --git a/product/Coramy/Extensions/productionOrderBuilder.py b/product/Coramy/Extensions/productionOrderBuilder.py deleted file mode 100755 index a79e70a1c53a6a9771f11bc2c60dc5ec74302a73..0000000000000000000000000000000000000000 --- a/product/Coramy/Extensions/productionOrderBuilder.py +++ /dev/null @@ -1,45 +0,0 @@ -def productionOrderBuilder(self): - - context = self - - # Delete all proposed orders - for o in context.portal_catalog(simulation_state = "auto_planned", parent_uid=[context.ordre_fabrication.getUid()]) : - realo = o.getObject() - realo.aq_parent._delObject(o.id) - - # Empty Zero Stock - for mid in context.portal_simulation.zero_stock.contentIds(): - context.portal_simulation.zero_stock._delObject(mid) - - # Expand Zero Stock as many times as needed (1 or 2 for the Coramy case) - # for i in range(0,1): - context.portal_simulation.zero_stock.expand() - - # Collect movements in Zero Stock applied rule - zs_movement_list = context.portal_simulation.zero_stock.contentValues() - - # keep only movements with a Modele resource - movement_list = [] - for movement in zs_movement_list : - try : - if movement.getResourceValue().getPortalType() == 'Modele' : - movement_list.append(movement) - except : - pass - - # Parse movements into a root group - root_group = context.portal_simulation.collectMovement(movement_list) - order_list = context.portal_simulation.buildOrderList(root_group) - - # Look at result - # return map(lambda x:x.getRelativeUrl(), order_list) - for order in order_list: - order.autoPlan() - order.purchase_order_apply_condition() - - request = context.REQUEST - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+propositions+OF+créés.' % len(order_list) - ) - - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/Interface/.cvsignore b/product/Coramy/Interface/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/Interface/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/Interface/__init__.py b/product/Coramy/Interface/__init__.py deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/MetoAPI.py b/product/Coramy/MetoAPI.py deleted file mode 100755 index 94f6cdcbc77c98d01335ecd3e47208a7796f5441..0000000000000000000000000000000000000000 --- a/product/Coramy/MetoAPI.py +++ /dev/null @@ -1,78 +0,0 @@ -from Products.PythonScripts.Utility import allow_module -allow_module("Products.Coramy.MetoAPI") - -XON = "\x11" -XOFF = "\x13" -STX = "\x02" -SOH = "\x01" -ESC = "\x1B" -LF = "\x0A" -CR = "\x0D" - -def command(*args): - raw_string = ''.join(args) - return raw_string - -def selectMeter(): - return command(STX, "m") - -def setDecoration(active): - if active: - return command(STX, "V4") - else: - return command(STX, "V0") - -def startFormat(): - return command(STX, "L") - -def endFormat(): - return command("E", CR) - -def setNumber(n = 1): - return command("Q%04d" % n, CR) - -def setTemparature(t = 15): - return command("H%02d" % t) - -def setPixel(width = 1, height = 1): - return command("D%1d%1d" % (width, height)) - -def setPrintSpeed(s = "C"): - return command("P", s) - -def setAsdFont(s = "4"): - return command("Kl<", s) - -def setPaperSpeed(s = "C"): - return command("S", s) - -def printLine(rotation, x, y, width, height, unit = 1): - return command("%1d" % rotation, - "X11000", - "%04d%04d" % (y * unit, x * unit), - "l", - "%04d%04d" % (width * unit, height * unit), - CR) - -def printText(rotation, font, horizontal_expansion, vertical_expansion, - size, x, y, text, unit = 1): - return command("%1d" % rotation, - font, - "%1d" % horizontal_expansion, - "%1d" % vertical_expansion, - "%03d" % size, - "%04d%04d" % (y * unit, x * unit), - text, - CR) - -def printFrame(rotation, x, y, width, height, - thickness_of_horizontal_lines, thickness_of_vertical_lines, - unit = 1): - return command("%1d" % rotation, - "X11000", - "%04d%04d" % (y * unit, x * unit), - "b", - "%04d%04d" % (width * unit, height * unit), - "%04d%04d" % (thickness_of_horizontal_lines, - thickness_of_vertical_lines), - CR) diff --git a/product/Coramy/Permissions.py b/product/Coramy/Permissions.py deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/PropertySheet/.cvsignore b/product/Coramy/PropertySheet/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/PropertySheet/Assortiment.py b/product/Coramy/PropertySheet/Assortiment.py deleted file mode 100755 index 571a03c51d9528a7333aae77f2ea1726a2de4054..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Assortiment.py +++ /dev/null @@ -1,60 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class Assortiment: - """ - Assortiment properties and categories - """ - - _properties = ( - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'code_ean13', - 'description' : 'Code EAN 13 de l assortiment', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'correspondance_tailles_id', - 'description' : 'Id de la correspondance de tailles utilisee', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Correspondance Tailles',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'eip', 'collection', 'destination', 'taille', 'nomenclature_douane', 'specialise' ) - - _constraints = ( - ) diff --git a/product/Coramy/PropertySheet/Coloris.py b/product/Coramy/PropertySheet/Coloris.py deleted file mode 100755 index dacac893ffdd220d98e8d2995e8645de5ec375fd..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Coloris.py +++ /dev/null @@ -1,36 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class Coloris: - """ - Coloris properties and categories - """ - - _properties = () diff --git a/product/Coramy/PropertySheet/Composant.py b/product/Coramy/PropertySheet/Composant.py deleted file mode 100755 index d1d71f9c6b5a3223c9d980c10144216ad8efded5..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Composant.py +++ /dev/null @@ -1,45 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class Composant: - """ - Attributs specifiques d'une ressource Composant chez Coramy - """ - - _properties = ( - { 'id' : 'nb_couleurs', - 'description' : 'Le nombre de couleurs', - 'type' : 'int', - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ( 'composition', 'collection', 'type_composant') diff --git a/product/Coramy/PropertySheet/CoramyDeliveryLine.py b/product/Coramy/PropertySheet/CoramyDeliveryLine.py deleted file mode 100755 index 7eb3341b2b68a1792b3337e917ac63ee2510e95c..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CoramyDeliveryLine.py +++ /dev/null @@ -1,38 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class CoramyDeliveryLine: - """ - Specific attributes / categories for Coramy (coloris, taille) - """ - - _properties = ( - ) - - _categories = ( 'taille', 'coloris' ) diff --git a/product/Coramy/PropertySheet/CoramyItem.py b/product/Coramy/PropertySheet/CoramyItem.py deleted file mode 100755 index 1bc8cc329a0f72c5d03385cae1984cd29c83c574..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CoramyItem.py +++ /dev/null @@ -1,56 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class CoramyItem: - """ - Attributs specifiques d'un item chez Coramy - ceci concerne particulierement les pieces de tissu - """ - - _properties = ( - { 'id' : 'laize_totale', - 'description' : 'La laize utile du tissu', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'laize_utile', - 'description' : 'La laize utile du tissu', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'bain_teinture', - 'description' : 'Le numero de bain de teinture de la piece', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = () - - _constraints = () diff --git a/product/Coramy/PropertySheet/CoramyOrder.py b/product/Coramy/PropertySheet/CoramyOrder.py deleted file mode 100755 index 029c10a39a583880ec24a1bcab0abfe65a54de74..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CoramyOrder.py +++ /dev/null @@ -1,72 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class CoramyOrder: - """ - Coramy order properties and categories - """ - - _properties = ( - { 'id' : 'date_reception', - 'description' : 'Date de reception', - 'type' : 'date', - 'mode' : 'w' }, - { 'id' : 'date_emission', - 'description' : 'Date emission', - 'type' : 'date', - 'mode' : 'w' }, - { 'id' : 'commission_ratio', - 'description' : 'Pourcentage de commision', - 'type' : 'float', - 'default' : 0.0, - 'mode' : 'w' }, - { 'id' : 'trade_condition_title', - 'description' : 'le nom de la condition commerciale appliquee', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Condition Vente','Condition Achat'), - 'acquisition_copy_value' : 0, - 'acquisition_accessor_id' : 'getTitle', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ('commande_origine', 'order_type', 'price_currency', 'group', 'specialise', - 'incoterm', 'delivery_mode', 'segmentation_strategique') - - _constraints = ( - { 'id' : 'applied_rule', - 'description' : 'There must at most one Applied Rule using this order', - 'type' : 'CategoryRelatedMembershipArity', - 'min_arity' : '0', - 'max_arity' : '1', - 'portal_type' : ('Applied Rule', ), - 'base_category' : ('causality',) - }, - ) diff --git a/product/Coramy/PropertySheet/CoramyTransformation.py b/product/Coramy/PropertySheet/CoramyTransformation.py deleted file mode 100755 index 33352d574523657db1f5196c284ba541b923fa5e..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CoramyTransformation.py +++ /dev/null @@ -1,47 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class CoramyTransformation: - """ - Attributs spécifiques d'une ressource Transformation chez Coramy - """ - - _properties = () - - _categories = ( 'transformation_state', 'taille' ) - - _constraints = ( - { 'id' : 'resource', - 'description' : 'There must at most one Modele', - 'type' : 'CategoryMembershipArity', - 'min_arity' : '0', - 'max_arity' : '1', - 'portal_type' : (), - 'base_category' : ('resource',) - }, - ) diff --git a/product/Coramy/PropertySheet/CoramyTransformedResource.py b/product/Coramy/PropertySheet/CoramyTransformedResource.py deleted file mode 100755 index 8efe9a7992fc043ff29ea9736354c023d7b34ca7..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CoramyTransformedResource.py +++ /dev/null @@ -1,42 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class CoramyTransformedResource: - """ - Attributs spécifiques d'une Transformed Resource chez Coramy - """ - - _properties = ( - { 'id' : 'element_composition', - 'description' : 'indique si une tranformed resource entre dans la composition du produit de transformation', - 'type' : 'boolean', - 'mode' : 'w' }, - ) - - _categories = ( 'transformation_subpart', ) - diff --git a/product/Coramy/PropertySheet/CorrespondanceMesures.py b/product/Coramy/PropertySheet/CorrespondanceMesures.py deleted file mode 100755 index e580d31cf410b4808e66db253a39a295b39381a7..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CorrespondanceMesures.py +++ /dev/null @@ -1,49 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class CorrespondanceMesures: - """ - CorrespondanceMesures properties and categories - """ - - _properties = ( - { 'id' : 'destination_title', - 'storage_id' : 'default_destination_title', # Coramy Compatibility - 'description' : 'The titles of the destination concerned by this document', - 'type' : 'string', - 'acquisition_base_category' : ('destination',), - 'acquisition_portal_type' : ('Organisation','MetaNode'), - 'acquisition_copy_value' : 0, - 'acquisition_accessor_id' : 'getTitle', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'mesure_vetement', 'reference_mesure') diff --git a/product/Coramy/PropertySheet/CorrespondanceTailles.py b/product/Coramy/PropertySheet/CorrespondanceTailles.py deleted file mode 100755 index 2214e34afaa203cf0e6dd2bc15599699586118bc..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/CorrespondanceTailles.py +++ /dev/null @@ -1,49 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class CorrespondanceTailles: - """ - CorrespondanceTailles properties and categories - """ - - _properties = ( - { 'id' : 'destination_title', - 'storage_id' : 'default_destination_title', # Coramy Compatibility - 'description' : 'The titles of the destination concerned by this document', - 'type' : 'string', - 'acquisition_base_category' : ('destination',), - 'acquisition_portal_type' : ('Organisation','MetaNode'), - 'acquisition_copy_value' : 0, - 'acquisition_accessor_id' : 'getTitle', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'taille', 'destination', 'morpho_type' ) diff --git a/product/Coramy/PropertySheet/ElementTarif.py b/product/Coramy/PropertySheet/ElementTarif.py deleted file mode 100755 index 9f1cbc226b0b61e345fd73ae1390b242d3d69840..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/ElementTarif.py +++ /dev/null @@ -1,42 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class ElementTarif: - """ - Element tarif - """ - - _properties = ( - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ( 'taille', 'coloris', 'quantity_range') diff --git a/product/Coramy/PropertySheet/Forme.py b/product/Coramy/PropertySheet/Forme.py deleted file mode 100755 index 0eca5304d4dc5f458b0718834f1794c78e53352b..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Forme.py +++ /dev/null @@ -1,60 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class Forme: - """ - Forme properties and categories - """ - - _properties = ( - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'forme_id', - 'description' : 'Id des vetements utilises', - 'type' : 'lines', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Forme',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'nomenclature', - 'description' : 'composants et consommations principaux servant a mettre au point la forme', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'mode_operatoire', - 'description' : 'ensemble de recommandations de montage servant a mettre au point la forme', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ( 'eip', 'collection', 'referentiel_forme', 'specialise', 'option_forme' ) diff --git a/product/Coramy/PropertySheet/Gamme.py b/product/Coramy/PropertySheet/Gamme.py deleted file mode 100755 index 1df253ef2ffa4a55eb5f9b5c7f9cbc2cbbf84900..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Gamme.py +++ /dev/null @@ -1,39 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class Gamme: - """ - Gamme properties and categories - """ - - _properties = ( - - ) - - _categories = ( 'eip', 'collection' ) diff --git a/product/Coramy/PropertySheet/GrilleConsommation.py b/product/Coramy/PropertySheet/GrilleConsommation.py deleted file mode 100755 index 52d424c3244867e6f1fe64f5a914a338973251d1..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/GrilleConsommation.py +++ /dev/null @@ -1,38 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class GrilleConsommation: - """ - Coloris properties and categories - """ - - _properties = () - - _categories = ( 'taille' , ) diff --git a/product/Coramy/PropertySheet/LigneNomenclature.py b/product/Coramy/PropertySheet/LigneNomenclature.py deleted file mode 100755 index b43caa74e74a91a47c4796b959b5d35fa6032bbb..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/LigneNomenclature.py +++ /dev/null @@ -1,42 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class LigneNomenclature: - """ - LigneNomenclature properties and categories - """ - - _properties = ( - { 'id' : 'entre_dans_la_composition', - 'description' : 'description des accessoires', - 'type' : 'boolean', - 'mode' : 'w' }, - ) - diff --git a/product/Coramy/PropertySheet/Machine.py b/product/Coramy/PropertySheet/Machine.py deleted file mode 100755 index 7232ced3f736e726ca7fa1490a5120825e6c6078..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Machine.py +++ /dev/null @@ -1,47 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class Machine: - """ - Machine properties and categories - """ - - _properties = ( - { 'id' : 'date_fin_garantie', - 'description' : 'la date de fin de garantie', - 'type' : 'date', - 'mode' : 'w' }, - { 'id' : 'date_fabrication', - 'description' : 'la date de fabrication', - 'type' : 'date', - 'mode' : 'w' } - ) - - _categories = ( 'type_acquisition', ) diff --git a/product/Coramy/PropertySheet/Modele.py b/product/Coramy/PropertySheet/Modele.py deleted file mode 100755 index a2000daf08656d65af1a7cf034db7562176690d2..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Modele.py +++ /dev/null @@ -1,157 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class Modele: - """ - Modele properties and categories - """ - - _properties = ( - { 'id' : 'accessoires', - 'description' : 'description des accessoires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'gamme_id', - 'description' : 'la gamme de coloris du modele', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Gamme',), - 'acquisition_copy_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'forme_id', - 'description' : 'la forme du modèle', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Forme',), - 'acquisition_copy_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'vetement_id', - 'description' : 'Id des vetements utilises', - 'type' : 'lines', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Vetement',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'composition', - 'description' : 'Composition du modele', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'coef_marge', - 'description' : 'Coefficient de marge', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'coef_majoration', - 'description' : 'Coefficient de majoration de prix', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'cout_additionnel', - 'description' : 'Cout additionnel en euros', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'code_ean13', - 'description' : 'Code EAN 13 du modle', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'temps_piquage', - 'description' : 'temps de piquage du modle', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'modele_template', - 'description' : 'Id du modele de reference', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Modele',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'correspondance_tailles_id', - 'description' : 'Id de la correspondance de tailles utilisee', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Correspondance Tailles',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'correspondance_mesures_id', - 'description' : 'Id de la correspondance de mesures utilisee', - 'type' : 'string', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Correspondance Mesures',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'nomenclature', - 'description' : 'composants et consommations principaux servant a mettre au point le modele', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'mode_operatoire', - 'description' : 'ensemble de recommandations de montage servant a mettre au point le modele', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ( 'eip', 'collection', 'specialise', 'destination', 'taille', 'transformation_state', 'tarif', 'modele_origine', 'marque', 'nomenclature_douane', -'code_entretien', 'label' ) - - _constraints = ( - { 'id' : 'forme', - 'description' : 'There must at most one Forme', - 'type' : 'CategoryMembershipArity', - 'min_arity' : '0', - 'max_arity' : '1', - 'portal_type' : ('Forme',), - 'base_category' : ('specialise',) - }, - { 'id' : 'gamme', - 'description' : 'There must at most one Gamme', - 'type' : 'CategoryMembershipArity', - 'min_arity' : '0', - 'max_arity' : '1', - 'portal_type' : ('Gamme',), - 'base_category' : ('specialise',) - }, - ) diff --git a/product/Coramy/PropertySheet/ModeleMachine.py b/product/Coramy/PropertySheet/ModeleMachine.py deleted file mode 100755 index 2ccd45c5cc598e45c0f223f3b0c710557eee34ec..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/ModeleMachine.py +++ /dev/null @@ -1,37 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class ModeleMachine: - """ - Modele machine properties and categories - """ - _properties = () - - _categories = ( 'type_machine', 'marque_machine') diff --git a/product/Coramy/PropertySheet/Morceau.py b/product/Coramy/PropertySheet/Morceau.py deleted file mode 100755 index aa47b38cd006f18a0bee963bedaa65b840c1bbc1..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Morceau.py +++ /dev/null @@ -1,57 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class Morceau: - """ - Morceau properties and categories - """ - - _properties = ( - { 'id' : 'quantite_simple', - 'description' : 'nombre de morceaux simples', - 'type' : 'int', - 'mode' : 'w' }, - { 'id' : 'quantite_double', - 'description' : 'nombre de morceaux doubles', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'type_tissu', - 'description' : 'le type lectra du tissu', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'type_cran', - 'description' : 'le type de cran utilise', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'fao', - 'description' : 'traitement fao du morceau oui ou non', - 'type' : 'boolean', - 'mode' : 'w' }, - - ) diff --git a/product/Coramy/PropertySheet/Operation.py b/product/Coramy/PropertySheet/Operation.py deleted file mode 100755 index 9118cbaa7097339e0adf2e7e8f05cb060aef482d..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Operation.py +++ /dev/null @@ -1,62 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - - - -class Operation: - """ - Operation properties and categories - """ - - _properties = ( - - { 'id' : 'frequence', - 'description' : 'Frequence', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'temps', - 'description' : 'Temps de l operation', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'machine', - 'description' : 'Machine', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'equipement', - 'description' : 'Equipement', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'etape', - 'description' : 'Etape', - 'type' : 'string', - 'mode' : 'w' }, - ) - - _categories = ( ) - - _constraints = ( ) diff --git a/product/Coramy/PropertySheet/PresentAuCatalogue.py b/product/Coramy/PropertySheet/PresentAuCatalogue.py deleted file mode 100755 index 1bb8809874f9ff6e784c8b861b396f7ac93bd489..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/PresentAuCatalogue.py +++ /dev/null @@ -1,41 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Romain Courteaud <Romain_Courteaud@coramy.com> - -# 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. -# -############################################################################## - - -class PresentAuCatalogue: - """ - Generic property - """ - - _properties = ( - { 'id' : 'present_au_catalogue', - 'description' : 'Présent au catalogue', - 'type' : 'boolean', - 'mode' : 'w' }, - ) - diff --git a/product/Coramy/PropertySheet/SampleOrderLine.py b/product/Coramy/PropertySheet/SampleOrderLine.py deleted file mode 100755 index bd0a0d8f63e52bae5d938650ba3a4a2c9aaf970a..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/SampleOrderLine.py +++ /dev/null @@ -1,67 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS 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. -# -############################################################################## - - -class SampleOrderLine: - """ - Sample order line properties and categories - """ - - _properties = ( - { 'id' : 'destination_reference', - 'storage_id' : 'default_destination_reference', # Compatibility - 'description' : 'The references of the resource for default destinations', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'coef_marge', - 'description' : 'Coefficient de marge', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'coef_majoration', - 'description' : 'Coefficient de majoration de prix', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'cout_additionnel', - 'description' : 'Cout additionnel en euros', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'theme', - 'description' : 'Theme', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'sort_index', - 'description' : 'sort_index', - 'type' : 'int', - 'mode' : 'w' }, - { 'id' : 'theme_index', - 'description' : 'theme_index', - 'type' : 'int', - 'mode' : 'w' }, - ) - - _categories = ('tarif',) diff --git a/product/Coramy/PropertySheet/SamplesOrder.py b/product/Coramy/PropertySheet/SamplesOrder.py deleted file mode 100755 index 1888dc49a0a8d904064c049240926d8f3442cb80..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/SamplesOrder.py +++ /dev/null @@ -1,64 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class SamplesOrder: - """ - Samples order properties and categories - """ - - _properties = ( - { 'id' : 'buyer_title', - 'description' : 'nom de l acheteur', - 'type' : 'string', - 'acquisition_base_category' : ('contact',), - 'acquisition_portal_type' : ('Person',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getTitle', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'date_rdv', - 'description' : 'Date du rendez-vous', - 'type' : 'date', - 'mode' : 'w' }, - { 'id' : 'rayon', - 'description' : 'Rayon', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'themes', - 'description' : 'Themes', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ('contact', 'collection', 'commande_origine', 'samples_order_type') diff --git a/product/Coramy/PropertySheet/SamplesPackingList.py b/product/Coramy/PropertySheet/SamplesPackingList.py deleted file mode 100755 index fb21c6dc0ab546f34f82c18d9b9dc1e15bd14015..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/SamplesPackingList.py +++ /dev/null @@ -1,51 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class SamplesPackingList: - """ - Properties which allow to define a Samples Packing List. - - Delivery objects usually have a causality. - """ - - _properties = ( - { 'id' : 'order_id', - 'description' : 'numero de commande echantillon', - 'type' : 'string', - 'override' : 1, - 'acquisition_base_category' : ('causality',), - 'acquisition_portal_type' : ('Samples Order',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'causality', ) - diff --git a/product/Coramy/PropertySheet/Tissu.py b/product/Coramy/PropertySheet/Tissu.py deleted file mode 100755 index a87f764622fdca3dd610fd60d1101c0a5e8b9581..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Tissu.py +++ /dev/null @@ -1,63 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class Tissu: - """ - Attributs spécifiques d'une ressource Tissu chez Coramy - """ - - _properties = ( - { 'id' : 'laize_totale', - 'description' : 'La laize utile du tissu', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'laize_utile', - 'description' : 'La laize utile du tissu', - 'type' : 'float', - 'mode' : 'w' }, - { 'id' : 'nb_couleurs', - 'description' : 'Nombre de couleurs', - 'type' : 'int', - 'mode' : 'w' }, - { 'id' : 'reference_qualite', - 'description' : 'La qualite tissu caracterise le support du tissu', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'reference_dessin', - 'description' : 'La reference du dessin chez le fournisseur tissu', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - ) - - _categories = ( 'composition', 'collection', 'eip', 'motif', 'categorie_tissu', - 'code_entretien', 'label' ) - diff --git a/product/Coramy/PropertySheet/VarianteComposant.py b/product/Coramy/PropertySheet/VarianteComposant.py deleted file mode 100755 index a9103591a5d09038e6e160604c6008df02cddec7..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VarianteComposant.py +++ /dev/null @@ -1,39 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - - -class VarianteComposant: - """ - VarianteComposant properties and categories - """ - - _properties = ( - - ) - diff --git a/product/Coramy/PropertySheet/VarianteGamme.py b/product/Coramy/PropertySheet/VarianteGamme.py deleted file mode 100755 index 38134c84ec96534d9006b2e8450147b1a3c7c952..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VarianteGamme.py +++ /dev/null @@ -1,59 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - - -class VarianteGamme: - """ - VarianteGamme properties and categories - """ - - _properties = ( - { 'id' : 'couleur_id', - 'description' : 'Id des variantes de couleur de tissu', - 'type' : 'lines', - 'acquisition_base_category' : ('couleur',), - 'acquisition_portal_type' : ('Variante Tissu',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'couleur_relative_url', - 'description' : 'Url locale des variantes de couleur de tissu', - 'type' : 'lines', - 'acquisition_base_category' : ('couleur',), - 'acquisition_portal_type' : ('Variante Tissu',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getRelativeUrl', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'couleur', ) diff --git a/product/Coramy/PropertySheet/VarianteModele.py b/product/Coramy/PropertySheet/VarianteModele.py deleted file mode 100755 index d3e5acef0cc67a71f6854df7f21a916551f501a1..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VarianteModele.py +++ /dev/null @@ -1,43 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - - -class VarianteModele: - """ - VarianteModele properties and categories - """ - - _properties = ( - { 'id' : 'prototype', - 'description' : 'definit la variante dans laquelle on realise le prototype', - 'type' : 'boolean', - 'mode' : 'w' }, - ) - - diff --git a/product/Coramy/PropertySheet/VarianteMorphologique.py b/product/Coramy/PropertySheet/VarianteMorphologique.py deleted file mode 100755 index 3717f8a180cb065086250104e7e24e712803cb0a..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VarianteMorphologique.py +++ /dev/null @@ -1,49 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - - -class VarianteMorphologique: - """ - VarianteMorphologique properties and categories - """ - - _properties = ( - { 'id' : 'vetement_id', - 'description' : 'Id des vetements utilises', - 'type' : 'lines', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Vetement',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'morpho_type', 'specialise') diff --git a/product/Coramy/PropertySheet/VarianteTissu.py b/product/Coramy/PropertySheet/VarianteTissu.py deleted file mode 100755 index 0ba7196a1f49b419234a3b29a38a96068f485ec6..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VarianteTissu.py +++ /dev/null @@ -1,40 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - - -class VarianteTissu: - """ - VarianteTissu properties and categories - """ - - _properties = ( - - ) - - _categories = ( 'referentiel_couleur', 'collection') diff --git a/product/Coramy/PropertySheet/VariatedReference.py b/product/Coramy/PropertySheet/VariatedReference.py deleted file mode 100755 index d6cfd3a53c779622831f5a5284a351e6c41e9e96..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/VariatedReference.py +++ /dev/null @@ -1,46 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## - -class VariatedReference: - """ - VariatedReference determine des references ou codes - dont les valeurs changent en fonction des variantes possibles de la resource concernee. - """ - - _properties = ( - # Definition of the variation domain - { 'id' : 'reference_variation_base_category', - 'storage_id' : 'reference_variation_base_category_list', # Coramy Compatibility - 'description' : 'A list of base categories which define possible discrete variations. '\ - 'Variation ranges are stored as category membership. '\ - '(prev. variation_category_list).', - 'type' : 'lines', - 'mode' : 'w' }, - ) - - _categories = ('reference_type', ) diff --git a/product/Coramy/PropertySheet/Vetement.py b/product/Coramy/PropertySheet/Vetement.py deleted file mode 100755 index bf12671198b8ee52c7e9792f1ca9c9b5ca32502f..0000000000000000000000000000000000000000 --- a/product/Coramy/PropertySheet/Vetement.py +++ /dev/null @@ -1,78 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Coramy SAS and Contributors. All Rights Reserved. -# Thierry Faucher <Thierry_Faucher@coramy.com> -# -# 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. -# -############################################################################## - - -class Vetement: - """ - Vetement properties and categories - """ - - _properties = ( - { 'id' : 'librairie', - 'description' : 'librairie contenant les morceaux', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'base_taille', - 'description' : 'taille de base', - 'type' : 'string', - 'mode' : 'w' }, - { 'id' : 'commentaires', - 'description' : 'Commentaires', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'nomenclature', - 'description' : 'composants et consommations principaux servant a mettre au point le vetement', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'mode_operatoire', - 'description' : 'ensemble de recommandations de montage servant a mettre au point le vetement', - 'type' : 'text', - 'mode' : 'w' }, - { 'id' : 'forme_id', - 'description' : 'Id des formes compatibles', - 'type' : 'lines', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Forme',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - { 'id' : 'correspondance_id', - 'description' : 'Id de la correspondance mesure associée', - 'type' : 'lines', - 'acquisition_base_category' : ('specialise',), - 'acquisition_portal_type' : ('Correspondance Mesures',), - 'acquisition_copy_value' : 0, - 'acquisition_mask_value' : 0, - 'acquisition_accessor_id' : 'getId', - 'acquisition_depends' : None, - 'mode' : 'w' }, - ) - - _categories = ( 'taille', 'mesure_vetement', 'specialise') diff --git a/product/Coramy/PropertySheet/__init__.py b/product/Coramy/PropertySheet/__init__.py deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/VERSION.txt b/product/Coramy/VERSION.txt deleted file mode 100755 index d65cabcf9fe447b4a2c3fe7afc5e049caaef7e5e..0000000000000000000000000000000000000000 --- a/product/Coramy/VERSION.txt +++ /dev/null @@ -1 +0,0 @@ -Coramy 0.1 diff --git a/product/Coramy/__init__.py b/product/Coramy/__init__.py deleted file mode 100755 index 726156cfddc5024dfd231efdbc29ba033af34071..0000000000000000000000000000000000000000 --- a/product/Coramy/__init__.py +++ /dev/null @@ -1,56 +0,0 @@ -############################################################################## -# -# Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. -# Jean-Paul Smets-Solanes <jp@nexedi.com> -# -# 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. -# -############################################################################## -""" - ERP5 Free Software ERP -""" - -# Update ERP5 Globals -from Products.ERP5Type.Utils import initializeProduct, updateGlobals -import sys, Permissions -this_module = sys.modules[ __name__ ] -document_classes = updateGlobals( this_module, globals(), permissions_module = Permissions) - -# Define object classes and tools -object_classes = () -portal_tools = () -content_classes = () -content_constructors = () - -# Import modules and initialize security -import MetoAPI - -# Finish installation -def initialize( context ): - import Document - initializeProduct(context, this_module, globals(), - document_module = Document, - document_classes = document_classes, - object_classes = object_classes, - portal_tools = portal_tools, - content_constructors = content_constructors, - content_classes = content_classes) diff --git a/product/Coramy/everyday_script b/product/Coramy/everyday_script deleted file mode 100755 index 792d6005489ebee62cde02066f19c5521e620451..0000000000000000000000000000000000000000 --- a/product/Coramy/everyday_script +++ /dev/null @@ -1 +0,0 @@ -# diff --git a/product/Coramy/help/.cvsignore b/product/Coramy/help/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/help/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/help/Composant.html b/product/Coramy/help/Composant.html deleted file mode 100755 index bc9196586dfe84d854fd76285349c37600b5b919..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Composant.html +++ /dev/null @@ -1,13 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Composant</p> -<p> </p><p> </p> -</body> -</html> diff --git a/product/Coramy/help/Forme_Creer.html b/product/Coramy/help/Forme_Creer.html deleted file mode 100755 index 55927fd023eb7c9413fd1dc6869421724a8d8cb4..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Forme_Creer.html +++ /dev/null @@ -1,32 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Forme</p> -<p> </p> -<p><strong>Créer une nouvelle forme :</strong></p> -<p>Il y a deux méthodes pour afficher un formulaire vierge :<br> - - Dans le menu action, choisir "Add Forme"et - cliquer sur le bouton, ou<br> - - A partir du module Forme, cliquer directement - sur l'icone d'un nouveau document<br> -<br> - <input type="checkbox" name="checkbox" value="checkbox"> Dans ce formulaire vierge, nommer la forme selon la nouvelle nomenclature<br> - <input type="checkbox" name="checkbox" value="checkbox"> Remplir le référentiel forme <br> -<input type="checkbox" name="checkbox" value="checkbox"> Indiquer la Collection et l'EIP (Espace Imaginaire Produit)<br> - <input type="checkbox" name="checkbox" value="checkbox"> Remplir la description<br> -<input type="checkbox" name="checkbox" value="checkbox"> Ne pas oublier de VALIDER<br> - <br> - <input type="checkbox" name="checkbox" value="checkbox"> Dans le menu Action, ajouter un dessin technique (add dessin technique)<br> - - <input type="checkbox" name="checkbox" value="checkbox"> Description du dessin (particulièrement s'il y en a plusieurs)<br> - - <input type="checkbox" name="checkbox" value="checkbox"> VALIDER<br> - <input type="checkbox" name="checkbox" value="checkbox"> Cliquer sur Parcourir, et choisir le dessin technique</p> -</body> -</html> diff --git a/product/Coramy/help/Gamme_Creer.html b/product/Coramy/help/Gamme_Creer.html deleted file mode 100755 index 75fbfb8059e88d224c87ab06a58fee7f059ca9c4..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Gamme_Creer.html +++ /dev/null @@ -1,29 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Gamme (coloris)</p> -<p> </p> -<p><strong>Crer une gamme</strong></p> -<p>Il y a deux méthodes pour afficher un formulaire vierge :<br> - - Dans le menu action, choisir "Add Modele"et cliquer sur le bouton, ou<br> - - A partir du module Modele, cliquer directement - sur l'icone d'un nouveau document<br> -<br><input type="checkbox" name="checkbox" value="checkbox"> Dans ce formulaire vierge, nommer le modèle selon la nouvelle nomenclature<br> -<input type="checkbox" name="checkbox" value="checkbox"> Remplir la référence client (si ellle existe)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Indiquer la Collection et l'EIP (Espace Imaginaire Produit)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Remplir la description<br> -<input type="checkbox" name="checkbox" value="checkbox"> Dans Accesoires, il est possible d'annoter les transferts ou autre composant<br> -<input type="checkbox" name="checkbox" value="checkbox"> Ne pas oublier de VALIDER<br> -<br>(Pour mettre a jour le lien avec la forme et la gamme de coloris, il faut que ces éléments existent.)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Créer le lien avec la forme<br> -<input type="checkbox" name="checkbox" value="checkbox"> Créer le lien avec la gamme<br> - -</p> -</body> -</html> diff --git a/product/Coramy/help/Gamme_ope.html b/product/Coramy/help/Gamme_ope.html deleted file mode 100755 index fc2521d3ef0ec17f473810cf6a876016fa5a57a7..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Gamme_ope.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Gamme opératoire</p> -<p> </p> -<p><strong>Check-list de la gamme opératoire</strong></p> -<p><input type="checkbox" name="checkbox" value="checkbox"> - A partir des favoris (Etudes gamme opératoire), repérer les - modèles à valider.<br> - <input type="checkbox" name="checkbox" value="checkbox"> Ouvrir un nouvel onglet, cliquer sur Accueil, choisir le module Transformations<br> - <input type="checkbox" name="checkbox" value="checkbox"> Rechercher une gamme existante afin de la copier (ex 70170)<br> - <input type="checkbox" name="checkbox" value="checkbox"> Cocher cette gamme, cliquer sur copier, puis sur coller<br> - <input type="checkbox" name="checkbox" value="checkbox"> Retrouver la copie (COPY%), et rentrer dans la fiche<br> - <input type="checkbox" name="checkbox" value="checkbox"> Changer le nom et la description<br> - <input type="checkbox" name="checkbox" value="checkbox"> VALIDER<br> - Cas ou il y a une erreur "id XXXXX it's already in use", voir à la fin<br> - <input type="checkbox" name="checkbox" value="checkbox"> Indiquer le produit principal (forme/70170)<br> - <input type="checkbox" name="checkbox" value="checkbox"> Lancer la recherche (moulinette)<br> - <input type="checkbox" name="checkbox" value="checkbox"> Cocher la forme recherchée<br> - <input type="checkbox" name="checkbox" value="checkbox"> Cliquer sur Update Relation<br> - <input type="checkbox" name="checkbox" value="checkbox"> Cliquer sur l'onglet Operations<br> - <input type="checkbox" name="checkbox" value="checkbox"> Modifier les temps<br> - <input type="checkbox" name="checkbox" value="checkbox"> VALIDER<br> - <input type="checkbox" name="checkbox" value="checkbox"> Dans l'onglet Netscape, revenir sur modèle à valider<br> - <input type="checkbox" name="checkbox" value="checkbox"> Dans le menu Action, cliquer sur "Valider la gamme opératoire" (+ moulinette)<br><br> - Cas ou il y a une erreur "id XXXXX it's already in use" : cela signifit que - la transformation XXXXX existe déjà.<br> - Dans ce cas :<br> -- Ouvrir un nouvel onglet, cliquer sur accueil, puis Transformations<br> -- Rechercher la gamme existante (XXXXX%)<br> -Si elle contient des opérations, vous pouvez alors la mettre à jour (comme une gamme normale)<br> -On ne tient alors plus compte de la gamme que vous aviez commencé à remplir,<br> -cette copie (elle s'appelle toujours copy..... puisque la validation a été refusée) peut<br> -servir pour une autre gamme.<br> -</p> -</body> -</html> diff --git a/product/Coramy/help/Modele.html b/product/Coramy/help/Modele.html deleted file mode 100755 index 93d3a1865fcfe4a595fa74f364fa40157caa951f..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Modele.html +++ /dev/null @@ -1,21 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Modèle</p> -<p> </p> -<p><strong>Le module Modèle </strong>contient tous les modèles.</p> -<p>Il y a deux méthodes pour se rendre dans le module Modèle :<br> - - à partir de la page d'accueil, cliquer - sur modèles (cf 1)<br> - - quelque soit l'endroit où l'on se trouve, - sélectionner dans la palette des modules (cf 2) le module Modèle<br> - et cliquer sur le <a href="Outils">bouton - palette</a>.</p> -</body> -</html> diff --git a/product/Coramy/help/Modele_Creer.html b/product/Coramy/help/Modele_Creer.html deleted file mode 100755 index 2bcc942b3724689559ebb1e673463d9ad3e3a53f..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Modele_Creer.html +++ /dev/null @@ -1,31 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Modele</p> -<p> </p> -<p><strong>Créer un nouveau modèle :</strong></p> -<p>Il y a deux méthodes pour afficher un formulaire vierge :<br> - - Dans le menu action, choisir "Add Modele"et cliquer sur le bouton, ou<br> - - A partir du module Modele, cliquer directement - sur l'icone d'un nouveau document<br> -<br><input type="checkbox" name="checkbox" value="checkbox"> Dans ce formulaire vierge, nommer le modèle selon la nouvelle nomenclature<br> -<input type="checkbox" name="checkbox" value="checkbox"> Remplir la référence client (si ellle existe)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Indiquer la Collection et l'EIP (Espace Imaginaire Produit)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Remplir la description<br> -<input type="checkbox" name="checkbox" value="checkbox"> Dans Accesoires, il est possible d'annoter les transferts ou autre composant<br> -<input type="checkbox" name="checkbox" value="checkbox"> Ne pas oublier de VALIDER<br> -<br> - (Pour mettre à jour le lien avec la forme et la gamme de coloris, il - faut que ces éléments existent.)<br> -<input type="checkbox" name="checkbox" value="checkbox"> Créer le lien avec la forme<br> -<input type="checkbox" name="checkbox" value="checkbox"> Créer le lien avec la gamme<br> - -</p> -</body> -</html> diff --git a/product/Coramy/help/Outils.html b/product/Coramy/help/Outils.html deleted file mode 100755 index af676db19a002b3b88da666b5ec5c9c3594b2be0..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Outils.html +++ /dev/null @@ -1,16 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Outils</p> -<p> </p> -<p><strong>Le bouton palette </strong>charge la page du module recherché - : </p> -<p> </p> -</body> -</html> diff --git a/product/Coramy/help/Page1.html b/product/Coramy/help/Page1.html deleted file mode 100755 index dd04a057fa29f43cc91e179d1ca31b1b7c632c70..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Page1.html +++ /dev/null @@ -1,13 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> -<title>Doc</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<link href="coramy" rel="stylesheet" type="text/css"> -</head> - -<body> -<p class="Title">Documentation ERP5</p><p> </p><p> </p> -<div align="center"><img src="images/ERP5.gif"> </div> -</body> -</html> diff --git a/product/Coramy/help/Sommaire.html b/product/Coramy/help/Sommaire.html deleted file mode 100755 index 73d626cef20da2b115afeceee0622e2aa715855a..0000000000000000000000000000000000000000 --- a/product/Coramy/help/Sommaire.html +++ /dev/null @@ -1,61 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> -<head> - <title>Sommaire</title> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> - <link href="coramy" rel="stylesheet" type="text/css"/> -</head> - -<body> - <a href="http://192.168.253.14:9673/coramy"> - <img src="images/ERP5.jpg"></a> - <p> </p> - <p> - <a href="Page1" target="Page"> Index </a><br> - ------------------------------------------------------------------------<br> - <a href="#A">A</a> <a href="#B">B</a> <a href="#C">C</a> - <a href="#D">D</a> <a href="#E">E</a> <a href="#F">F</a> - <a href="#G">G</a> <a href="#H">H</a> <a href="#I">I</a> - <a href="#J">J</a> <a href="#K">K</a> <a href="#L">L</a> - <a href="#M">M</a> <a href="#N">N</a> <a href="#O">O</a> - <a href="#P">P</a> <a href="#Q">Q</a> <a href="#R">R</a> - <a href="#S">S</a> <a href="#T">T</a> <a href="#U">U</a> - <a href="#V">V</a> <a href="#W">W</a> <a href="#X">X</a> - <a href="#Y">Y</a> <a href="#Z">Z</a><br> - ------------------------------------------------------------------------ - </p> - <p> </p> - <p> - <a name="A"> </a><br> - <a name="B"> </a><br> - <a name="C"> </a><br> - - <a href="Composant" target="Page">Composant</a><br> - - <a href="Composant_Creer" target="Page">nouveau</a><br> - <a name="D"> </a><br> - <a name="E"> </a><br> - <a name="F"> </a><br> - <a href="Forme" targer="Page">Forme</a><br> - - <a href="Forme_Creer" target="Page">nouvelle</a> <br> - <a name="G">Gamme</a><br> - <a name="H"> </a><br> - <a name="I"> </a><br> - <a name="J"> </a><br> - <a name="K"> </a><br> - <a name="L"> </a><br> - <a name="M"> </a><br> - <a href="Modele" target="Page">Modèle</a><br> - - <a href="Modele_Creer" target="Page">nouveau</a><br> - <a name="N"> </a><br> - <a name="O"> </a><br> - <a href="Outils" target="Page">Outils</a> - <a name="T"> </a><br> - Transformations<br> - <a href="Gamme_ope" target="Page">Gamme opératoire</a> -</p> - -</body> -</html> diff --git a/product/Coramy/help/coramy.css b/product/Coramy/help/coramy.css deleted file mode 100755 index 341378469427337c9111a5d2a9661071e35cdbf0..0000000000000000000000000000000000000000 --- a/product/Coramy/help/coramy.css +++ /dev/null @@ -1,74 +0,0 @@ -/* _________________ CSS CORAMY _________________ */ -/* ________ Thierry_Faucher@coramy.com - last modif. : 08-03-03 ________ */ - -A:link { - color: #2F5651; - text-decoration: underline; -} - -A:visited { - color: #2F5651; - text-decoration: none; -} - -A:hover { - text-decoration: underline; - color: red; -} - -BODY{ - background-color: #DAE6E6; - color: #2F5651; -} - -.Title{ - font-family: Arial, Helvetica, Sans-serif; - font-size: 32px; - line-height: 24px; - color: #2F5651; - text-align: center; -} - -.subSummary{ - font-family: Arial, Helvetica, Sans-serif; - font-size: 10px; - line-height: 10px; - color: #2F5651; -} - -.Coramy{ - font-family: Palatino; - font-weight: bold; - font-size: 36px; - line-height: 36px; - color: #a39d99; - text-align: center; -} - -.TexteActif{ - font-family: Palatino; - font-weight: normal; - font-size: 18px; - line-height: 18px; - color: #1a3664; - text-align: center; -} - -.TextePassif{ - font-family: Palatino; - font-weight: normal; - font-size: 18px; - line-height: 18px; - color: #a39d99; - text-align: center; -} - -.Texte{ - font-family: Arial, Helvetica, Sans-serif; - font-size: 14px; - line-height: 14px; - color: #1a3664; - text-align: left; -} - - diff --git a/product/Coramy/help/images/.cvsignore b/product/Coramy/help/images/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/help/images/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/help/images/ERP5.gif b/product/Coramy/help/images/ERP5.gif deleted file mode 100755 index c93746483f43d5a2e3c8cdbdcb264d6a10fca31b..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/ERP5.gif and /dev/null differ diff --git a/product/Coramy/help/images/ERP5.jpg b/product/Coramy/help/images/ERP5.jpg deleted file mode 100755 index b56de31d3b7899c281abbdf687827b31b07c3c6b..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/ERP5.jpg and /dev/null differ diff --git a/product/Coramy/help/images/Modele_cf1.jpg b/product/Coramy/help/images/Modele_cf1.jpg deleted file mode 100755 index a1a3fd84d23961d8effff99732a26ac6016718a6..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/Modele_cf1.jpg and /dev/null differ diff --git a/product/Coramy/help/images/accueil.jpg b/product/Coramy/help/images/accueil.jpg deleted file mode 100755 index 8f6a63304d500ce1e8e76b941c8bd129dc8d09a7..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/accueil.jpg and /dev/null differ diff --git a/product/Coramy/help/images/apache_pb.gif b/product/Coramy/help/images/apache_pb.gif deleted file mode 100755 index 4ea5856123daab22f2d01cd2cbb11442b6a9c5ee..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/apache_pb.gif and /dev/null differ diff --git a/product/Coramy/help/images/macosxlogo.gif b/product/Coramy/help/images/macosxlogo.gif deleted file mode 100755 index cf99817c0928ff7a522592eeecdaef5e332511ae..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/macosxlogo.gif and /dev/null differ diff --git a/product/Coramy/help/images/palette.jpg b/product/Coramy/help/images/palette.jpg deleted file mode 100755 index 2d818ad3b774a0595871d2dd3b9161303add5eec..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/palette.jpg and /dev/null differ diff --git a/product/Coramy/help/images/web_share.gif b/product/Coramy/help/images/web_share.gif deleted file mode 100755 index 9abd912742c167e3fec310fbd2f6263c606f2c98..0000000000000000000000000000000000000000 Binary files a/product/Coramy/help/images/web_share.gif and /dev/null differ diff --git a/product/Coramy/help/index.html b/product/Coramy/help/index.html deleted file mode 100755 index 10b184a8e06cc54dd6f441043f82003e03064b4f..0000000000000000000000000000000000000000 --- a/product/Coramy/help/index.html +++ /dev/null @@ -1,15 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> -<html> -<head> -<title>Documentation ERP5</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -</head> - -<frameset cols="22%,*" frameborder="NO" border="0" framespacing="0"> - <frame src="Sommaire" name="Sommaire" scrolling="YES" resize> - <frame src="Page1" name="Page"> -</frameset> -<noframes><body> - -</body></noframes> -</html> diff --git a/product/Coramy/refresh.txt b/product/Coramy/refresh.txt deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/product/Coramy/skins/.cvsignore b/product/Coramy/skins/.cvsignore deleted file mode 100755 index d0743b7da685f380ff337cb0f7bf7f6fd7956ec3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.AppleDouble -*.pyc diff --git a/product/Coramy/skins/coramy_crm/Organisation_defaultSearchForm.form b/product/Coramy/skins/coramy_crm/Organisation_defaultSearchForm.form deleted file mode 100755 index c2a87ce3c0b4337b72e5392adab71275d4c4013d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/Organisation_defaultSearchForm.form +++ /dev/null @@ -1,167 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_view_dialog</pt> - <action>Base_searchHandler</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_organisation_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modèle</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Organisation_zDefaultSearch</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_group_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Organigramme</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>python:'rien du tout'</default> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/Organisation_getOneLineAddress.py b/product/Coramy/skins/coramy_crm/Organisation_getOneLineAddress.py deleted file mode 100755 index 0d3543e0f3573b296281d1fc6109fa4bbf7d38c4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/Organisation_getOneLineAddress.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "Organisation_getOneLineAddress" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -address = context.getDefaultAddress() -if address != None: - zip_code = context.getDefaultAddress().getZipCode() - city = context.getDefaultAddress().getCity() -else: - zip_code = '' - city = '' - -region = context.getDefaultAddressRegion() -if region == None: - region = '' -else: - region = region.split('/')[-1] - -return 'Lieu livraison : %s %s %s' % (zip_code, city, region) diff --git a/product/Coramy/skins/coramy_crm/Organisation_importFile.py b/product/Coramy/skins/coramy_crm/Organisation_importFile.py deleted file mode 100755 index 0b76d64fc32b967aafb0f22e01775bfb442fa74b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/Organisation_importFile.py +++ /dev/null @@ -1,171 +0,0 @@ -## Script (Python) "Organisation_importFile" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=import_file, **kw -##title= -## -# import des lieux fonctions depuis Cognis -# format de fichier attendu : -# Organigramme, Role, Metier, Fonction, Raison sociale, Adresse, CodePostal, Ville -# Ville, Pays, Code Ean, Code TVA, Code compta, Tél, Fax, email - -request = context.REQUEST -file_line_list = import_file.readlines() -organisation_module = context.getPortalObject().organisation -compteur = 0 - -for file_line in file_line_list : - sub_line_list = file_line.split('\r') - for sub_line in sub_line_list : - if sub_line != '': - - # create a new item - line_item_list = sub_line.split('\t') - - # génération Id - my_id = str(organisation_module.generateNewId()) - - # recup categorie Organigramme - if len(line_item_list) > 0 : - my_organigramme = line_item_list[0] - else : - my_organigramme = None - - # recup catégorie Role - if len(line_item_list) > 1 : - my_role = line_item_list[1] - else : - my_role = None - - # recup categorie Métier - if len(line_item_list) > 2 : - my_metier = line_item_list[2] - else : - my_metier = None - - # recup categorie Fonction - if len(line_item_list) > 3 : - my_fonction = line_item_list[3] - else : - my_fonction = None - - # recup raison sociale - if len(line_item_list) > 4 : - my_name = line_item_list[4] - else : - my_name = None - - # recup Adresse - if len(line_item_list) > 5 : - my_street1 = line_item_list[5] - else : - my_street1 = None - if len(line_item_list) > 6 : - my_street2 = line_item_list[6] - else : - my_street2 = None - if len(line_item_list) > 7 : - my_street3 = line_item_list[7] - else : - my_street3 = None - - # recup Code Postal - if len(line_item_list) > 8 : - my_cp = line_item_list[8] - else : - my_cp = None - - # recup Ville - if len(line_item_list) > 9 : - my_city = line_item_list[9] - else : - my_city = None - - # recup catégorie Pays - if len(line_item_list) > 10 : - if line_item_list[10] == "France" : - my_country = "Europe/Nord/France" - else : - my_country = None - else : - my_country = None - - # recup Code EAN - if len(line_item_list) > 11 : - my_ean_code = line_item_list[11] - else : - my_ean_code = None - - # recup Code TVA - if len(line_item_list) > 12 : - my_tva_code = line_item_list[12] - else : - my_tva_code = None - - # recup Code comptable - if len(line_item_list) > 13 : - my_compta_code = line_item_list[13] - else : - my_compta_code = None - - # recup Téléphone - if len(line_item_list) > 14 : - my_tel = line_item_list[14] - else : - my_tel = None - - # recup Fax - if len(line_item_list) > 15 : - my_fax = line_item_list[15] - else : - my_fax = None - - # recup Email - if len(line_item_list) > 16 : - my_email = line_item_list[16] - else : - my_email = None - - my_address = '' - if my_street1 != '' : - my_address += my_street1 - if my_street2 != '' : - my_address += '\n'+my_street2 - if my_street3 != '' : - my_address += '\n'+my_street3 - - # print my_id,my_name,my_address,my_tel,my_fax,my_email,my_role,my_organigramme,my_fonction,my_metier,my_country,my_city,my_cp,my_name,my_ean_code,my_tva_code,my_compta_code - # print len(line_item_list), len(file_line_list) - - context.portal_types.constructContent(type_name = 'Organisation', - container = organisation_module, - id = my_id, - title = my_name, - default_address_street_address = my_address, - default_telephone_text = my_tel, - default_fax_text = my_fax, - default_email_text = my_email, - role = my_role, - group = my_organigramme, - function = my_fonction, - activity = my_metier, - default_address_region = my_country, - default_address_city = my_city, - default_address_zip_code = my_cp, - corporate_name = my_name, - ean13_code = my_ean_code, - eu_vat_code = my_tva_code, - code_comptable = my_compta_code) - compteur += 1 - organisation_module[my_id].flushActivity(invoke=1) - -# return printed - -redirect_url = '%s?%s' % ( organisation_module.absolute_url() - , 'portal_status_message=%s+organisations+créées.' % compteur - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_crm/Organisation_importForm.form b/product/Coramy/skins/coramy_crm/Organisation_importForm.form deleted file mode 100755 index 701195c4b18e5d5cd7fac26df2768f659b9a2ab2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/Organisation_importForm.form +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Importer</title> - <row_length>4</row_length> - <name>Organisation_importForm</name> - <pt>form_dialog</pt> - <action>Organisation_importFile</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_import_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier à importer</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/bank_account_view.form b/product/Coramy/skins/coramy_crm/bank_account_view.form deleted file mode 100755 index 83e11e5e7e5feb7219bd8026d86a5a0a1f28bc2d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/bank_account_view.form +++ /dev/null @@ -1,153 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Telephone View</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/Id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/Title</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_iban</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Iban Number</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/Iban</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>my_description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/Description</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/chat_address_view.form b/product/Coramy/skins/coramy_crm/chat_address_view.form deleted file mode 100755 index 1d3495064d46fbb7d3a3bc7bdf6ceb1e774de20e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/chat_address_view.form +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>chat_address_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_chat_protocol</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_chat_protocol</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getChatProtocol | nothing</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_chat_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_chat_id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getChatId | nothing</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/email_view.form b/product/Coramy/skins/coramy_crm/email_view.form deleted file mode 100755 index 3538f5df4017d9875bac867e4514f3368b9407c3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/email_view.form +++ /dev/null @@ -1,153 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Telephone View</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_url_string</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Url</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getUrlString</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getDescription</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/geographic_address_view.form b/product/Coramy/skins/coramy_crm/geographic_address_view.form deleted file mode 100755 index 404a8d956523bd95493cfb26a38d1e9bbb1923b9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/geographic_address_view.form +++ /dev/null @@ -1,124 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>geographic_address_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_street_address</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>street_address</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getStreetAddress</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_DefaultExport.pt b/product/Coramy/skins/coramy_crm/organisation_DefaultExport.pt deleted file mode 100755 index 8cf07f551ecbee14cc009b744bd6d6c22dcb028b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_DefaultExport.pt +++ /dev/null @@ -1 +0,0 @@ - <id tal:content="here/id"></id> diff --git a/product/Coramy/skins/coramy_crm/organisation_cat b/product/Coramy/skins/coramy_crm/organisation_cat deleted file mode 100755 index 10a325ec4602a88da96a703824aac76a2b75eecf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_cat +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title></title> - <name>organisation_list</name> - <action></action> - <enctype></enctype> - <method>POST</method> - <pt>form_list</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>contact_list</id> <type>ListBox</type> - <values> - <sort></sort> - <search type="int">1</search> - <description></description> - <extra></extra> - <default></default> - <css_class></css_class> - <title>Contacts</title> - <lines type="int">30</lines> - <height type="int">5</height> - <external_validator></external_validator> - <width type="int">40</width> - <list_cookie>ORGANISATION_LIST</list_cookie> - <columns type="list">[('id', 'id'), ('Title', 'Title'), ('Description', 'Description')]</columns> - <meta_types type="list">[('ERP5 Telephone', 'ERP5 Telephone'), ('Document', 'Document'), ('Base18 Document', 'Base18 Document')]</meta_types> - <hidden type="int">0</hidden> - <list_method type="method">portal_catalog</list_method> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <alternate_name></alternate_name> - <reverse type="int">0</reverse> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_cat.form b/product/Coramy/skins/coramy_crm/organisation_cat.form deleted file mode 100755 index 998562ee7be08c86acb4704ccaa9680d1fd44d3c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_cat.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>organisation_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>contact_list</id> <type>ListBox</type> - <values> - <all_columns></all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('Title', 'Title'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action></list_action> - <list_cookie>ORGANISATION_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[('ERP5 Telephone', 'ERP5 Telephone'), ('Document', 'Document'), ('Base18 Document', 'Base18 Document')]</meta_types> - <portal_types></portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns></search_columns> - <select></select> - <selection_name></selection_name> - <sort></sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contacts</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_edit.py b/product/Coramy/skins/coramy_crm/organisation_edit.py deleted file mode 100755 index 465fd83ef21faaa1e78f3f6458b73c0620b15773..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_edit.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "organisation_edit" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -request=context.REQUEST - -try: - # Validate the form - context.organisation_view.validate_all_to_request(request) - context.edit(id=request.my_id - , title=request.my_title - , corporate_name = request.my_corporate_name - , description = request.my_description) -except FormValidationError, validation_errors: - # Pack errors into the request - field_errors = context.organisation_view.ErrorFields(validation_errors) - request.set('field_errors', field_errors) - return context.organisation_view(request) -else: - redirect_url = '%s/organisation_view?%s' % ( context.absolute_url() - , 'portal_status_message=Data+Updated.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_crm/organisation_list.form b/product/Coramy/skins/coramy_crm/organisation_list.form deleted file mode 100755 index 5493785eb02e678e62af594ab72cb1775a55a98a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_list.form +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste d'organisations</title> - <row_length>4</row_length> - <name>organisation_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Title', 'Nom courant'), ('getRole', 'R\xf4le'), ('getGroup', 'Organigramme'), ('getActivity', 'M\xe9tier'), ('getFunction', 'Fonction'), ('getDefaultAddressRegion', 'Pays')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('min', '(0,1,3)'), ('max', '100')]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">25</lines> - <list_action>organisation_list</list_action> - <list_cookie>ORGANISATION_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Organisation', 'Organisation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>organisations_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Organisation</title> - <width type="int">40</width> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_listCoordinates.form b/product/Coramy/skins/coramy_crm/organisation_listCoordinates.form deleted file mode 100755 index bc438b2743da5dc99df5f962115792cc37a010ee..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_listCoordinates.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>organisation_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>coordinate_list</id> <type>ListBox</type> - <values> - <all_columns></all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('Title', 'Title'), ('AsText', 'Coordinate')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('min', '(0,1,3)'), ('max', '100')]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action></list_action> - <list_cookie>COORDINATE_LIST</list_cookie> - <list_method type="method">objectValues</list_method> - <meta_types type="list">[('ERP5 Telephone', 'ERP5 Telephone')]</meta_types> - <portal_types></portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name></selection_name> - <sort></sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Coordinates</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_view.form b/product/Coramy/skins/coramy_crm/organisation_view.form deleted file mode 100755 index 13e7e75fe17b42570ab36c0fd66fc5551860cd76..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_view.form +++ /dev/null @@ -1,521 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Organisation</title> - <row_length>4</row_length> - <name>General</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Identifiant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Nom courant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_corporate_name</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Raison sociale</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getCorporateName</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_role</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Rôle</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/role/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Organigramme</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_activity</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Métier</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/activity/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_function</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Fonction</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/function/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Right</title> - <fields> - - <field><id>my_default_email_text</id> <type>EmailField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Email</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - <message name="not_email">You did not enter an email address.</message> - </messages> - </field> - <field><id>my_default_telephone_text</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Téléphone</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_fax_text</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Fax</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_street_address</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Adresse</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_default_address_zip_code</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code postal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_city</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Ville</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_region</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Pays</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/region/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Middle</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">100</width> - </values> - <tales> - <default>here/Description</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>List</title> - <fields> - - <field><id>coordonnnees_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Coordonn\xe9e'), ('asText', 'Valeur')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_cookie>CONTACT_LIST</list_cookie> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>folder_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Coordonnées</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/organisation_viewDetails.form b/product/Coramy/skins/coramy_crm/organisation_viewDetails.form deleted file mode 100755 index 54340214427e2df3478513a0ddf3c0fe2371c576..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/organisation_viewDetails.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Organisation</title> - <row_length>4</row_length> - <name>Details</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_code_comptable</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code comptable</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_eu_vat_code</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° TVA</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_ean13_code</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code EAN</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_siren_code</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° Siren</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_emails.form b/product/Coramy/skins/coramy_crm/person_emails.form deleted file mode 100755 index 9a92e73f1e966227855f50aa3a10e744118cd808..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_emails.form +++ /dev/null @@ -1,115 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>List Emails</title> - <row_length>4</row_length> - <name>person_search</name> - <pt>form_dialog</pt> - <action>person_emails_report</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_role</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Role</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/role/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_region</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Role</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/region/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_skill</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Role</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/skill/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_emails_report.dtml b/product/Coramy/skins/coramy_crm/person_emails_report.dtml deleted file mode 100755 index 51247399df19b3a44f156a9f364a4348cbce7b31..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_emails_report.dtml +++ /dev/null @@ -1,4 +0,0 @@ -<dtml-in "search_in_category(category_list=['role/%s' % role], portal_type='Email')"><dtml-if "getObject().getDefaultRegion() == region"> -<dtml-var "getObject().getUrlString()"> -</dtml-if> -</dtml-in> diff --git a/product/Coramy/skins/coramy_crm/person_exchange b/product/Coramy/skins/coramy_crm/person_exchange deleted file mode 100755 index f446eba51516252f90403fbc740386cdd6c768ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_exchange +++ /dev/null @@ -1,116 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Import / Export</title> - <name>exchange</name> - <action>base_search</action> - <enctype></enctype> - <method>POST</method> - <pt>form_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <extra></extra> - <description></description> - <truncate type="int">0</truncate> - <title>Title</title> - <default></default> - <css_class></css_class> - <required type="int">1</required> - <display_maxwidth></display_maxwidth> - <external_validator></external_validator> - <max_length></max_length> - <hidden type="int">0</hidden> - <display_width type="int">20</display_width> - <alternate_name></alternate_name> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_id</id> <type>StringField</type> - <values> - <extra></extra> - <description></description> - <truncate type="int">0</truncate> - <title>Id</title> - <default></default> - <css_class></css_class> - <required type="int">1</required> - <display_maxwidth></display_maxwidth> - <external_validator></external_validator> - <max_length></max_length> - <hidden type="int">0</hidden> - <display_width type="int">20</display_width> - <alternate_name></alternate_name> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>external_file</id> <type>FileField</type> - <values> - <external_validator></external_validator> - <description></description> - <title>File</title> - <default></default> - <css_class></css_class> - <hidden type="int">0</hidden> - <extra></extra> - <display_width type="int">20</display_width> - <alternate_name></alternate_name> - <display_maxwidth></display_maxwidth> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_description</id> <type>StringField</type> - <values> - <extra></extra> - <description></description> - <truncate type="int">0</truncate> - <title>my_description</title> - <default></default> - <css_class></css_class> - <required type="int">1</required> - <display_maxwidth></display_maxwidth> - <external_validator></external_validator> - <max_length></max_length> - <hidden type="int">0</hidden> - <display_width type="int">20</display_width> - <alternate_name></alternate_name> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_exchange.form b/product/Coramy/skins/coramy_crm/person_exchange.form deleted file mode 100755 index 1663c49073d0912741a09ad3d561f732f1fc3c05..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_exchange.form +++ /dev/null @@ -1,133 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Import / Export</title> - <row_length>4</row_length> - <name>exchange</name> - <pt>form_dialog</pt> - <action>PieceTissu_importFile</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_import_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>File</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_list.form b/product/Coramy/skins/coramy_crm/person_list.form deleted file mode 100755 index 573ef08f19a1ad568b5ca65e4d0b326998aa0aee..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_list.form +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de personnes</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Title', 'Nom courant'), ('getRole', 'R\xf4le'), ('getGroup', 'Groupe'), ('getActivity', 'Activit\xe9'), ('getSkill', 'Fonction'), ('getDefaultTelephoneText', 'T\xe9l\xe9phone'), ('getDefaultFaxText', 'Fax')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>PERSON_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <more_columns type="list">[('path', 'Path')]</more_columns> - <portal_types type="list">[('Person', 'Person')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>person_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Personne</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_list_phone.form b/product/Coramy/skins/coramy_crm/person_list_phone.form deleted file mode 100755 index a9cde29fb0277753d186a9f90f5d4b07273a5935..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_list_phone.form +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Folder Contents</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('catalog.path', 'Path'), ('catalog.id', 'Id'), ('catalog.Title', 'Titlex'), ('catalog.Description', 'Description'), ('phone.path', 'Phone')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('catalog.id', 'Id'), ('catalog.Title', 'Titlex'), ('catalog.Description', 'Description'), ('phone.path', 'Phone')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action></list_action> - <list_cookie>PERSON_LIST</list_cookie> - <list_method type="method">person_search_phone</list_method> - <meta_types type="list">[]</meta_types> - <more_columns type="list">[('path', 'Path')]</more_columns> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>persons</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contacts</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_list_sort_on.form b/product/Coramy/skins/coramy_crm/person_list_sort_on.form deleted file mode 100755 index 223c096d8342a39e36472536d34d13e003237182..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_list_sort_on.form +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Define Sort Order</title> - <row_length>4</row_length> - <name>person_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_on</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('None', 'None'), ('Title', 'Title'), ('Id', 'id'), ('Description', 'description')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Sort Parameter</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_list_ui.form b/product/Coramy/skins/coramy_crm/person_list_ui.form deleted file mode 100755 index e1c92980aa4e295176e8840afda6c75fbb2de4b3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_list_ui.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Set List Settting</title> - <row_length>4</row_length> - <name>person_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>columns</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('None', 'None'), ('Id', 'id'), ('Title', 'Title'), ('Description', 'Description')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>columns</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>lines</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('5', '5'), ('10', '10'), ('25', '25'), ('50', '50'), ('100', '100'), ('200', '200'), ('500', '500')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Line</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_report.form b/product/Coramy/skins/coramy_crm/person_report.form deleted file mode 100755 index 7982e05f776ee814667064ad4d839dbbd5e5f842..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_report.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>person_search</name> - <pt>form_dialog</pt> - <action>base_search</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_search.form b/product/Coramy/skins/coramy_crm/person_search.form deleted file mode 100755 index 2854a73d5c58eeb2d3be7aee0db1db2359db0562..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_search.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Search</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>person_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_search_phone.zsql b/product/Coramy/skins/coramy_crm/person_search_phone.zsql deleted file mode 100755 index bed9c2911929f272530e6389880fe9e56c81e7ea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_search_phone.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>select_columns -sort_on -Description -id -Title</params> -<dtml-if sort_on> -SELECT DISTINCT <dtml-var select_columns> FROM catalog as catalog, catalog as phone, roles_and_users WHERE catalog.uid=phone.parent_uid AND catalog.uid=roles_and_users.uid AND catalog.portal_type='Person' ORDER BY <dtml-var sort_on> -<dtml-else> -SELECT DISTINCT <dtml-var select_columns> FROM catalog as catalog, catalog as phone, roles_and_users WHERE catalog.uid=phone.parent_uid AND catalog.uid=roles_and_users.uid AND catalog.portal_type='Person' -</dtml-if> diff --git a/product/Coramy/skins/coramy_crm/person_search_phones.form b/product/Coramy/skins/coramy_crm/person_search_phones.form deleted file mode 100755 index e212ae2de131aa168090e36cc2b233402e84f3ad..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_search_phones.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Search</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>person_list_phone</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_view.form b/product/Coramy/skins/coramy_crm/person_view.form deleted file mode 100755 index a159b614c7f344390900cbd96891431b05c33221..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_view.form +++ /dev/null @@ -1,589 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Personne</title> - <row_length>4</row_length> - <name>General</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Identifiant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_gender</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Genre</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/gender/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_first_name</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Prénom</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getFirstName</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_last_name</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Nom</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getLastName</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_role</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Rôle</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultRole</default> - <items>here/portal_categories/role/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Groupe</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultGroup</default> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_activity</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Distribution', 'Distribution'), ('Manufacture', 'Manufacture'), ('Transport', 'Transport')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Activité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultActivity</default> - <items>here/portal_categories/activity/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_skill_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Fonctions</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getSkillList</default> - <items>here/portal_categories/skill/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Right</title> - <fields> - - <field><id>my_default_email_text</id> <type>EmailField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Email</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultEmailText</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - <message name="not_email">You did not enter an email address.</message> - </messages> - </field> - <field><id>my_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>subordination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Organisation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_telephone_text</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Téléphone</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_fax_text</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Fax</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_street_address</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Adresse</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_default_address_zip_code</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code postal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_city</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Ville</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_address_region</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Pays</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/region/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Middle</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">100</width> - </values> - <tales> - <default>here/Description</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>List</title> - <fields> - - <field><id>coordonnnees_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Coordonn\xe9e'), ('asText', 'Valeur')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_cookie>CONTACT_LIST</list_cookie> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>folder_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Coordonnées</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/person_viewProfile.form b/product/Coramy/skins/coramy_crm/person_viewProfile.form deleted file mode 100755 index 4ae7e46f6589c8699f4ca45c6dea544707c3c60a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/person_viewProfile.form +++ /dev/null @@ -1,309 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Person Default View Form</title> - <row_length>4</row_length> - <name>General</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>ID</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Usual Name</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Group</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultGroup</default> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_activity</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Distribution', 'Distribution'), ('Manufacture', 'Manufacture'), ('Transport', 'Transport')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Activity</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultActivity</default> - <items>here/portal_categories/activity/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_function</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Registered office', 'Registered office'), ('Store', 'Store'), ('Wharehouse', 'Wharehouse'), ('Workshop', 'Workshop')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Function</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultFunction</default> - <items>here/portal_categories/function/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_role</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Role</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultRole</default> - <items>here/portal_categories/role/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Right</title> - <fields> - - <field><id>my_product_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Product Interest</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getProductList</default> - <items>here/portal_categories/product/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_skill_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Skills</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getSkillList</default> - <items>here/portal_categories/skill/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Middle</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Comments</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">100</width> - </values> - <tales> - <default>here/Description</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>List</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/sales_enquire.form b/product/Coramy/skins/coramy_crm/sales_enquire.form deleted file mode 100755 index 54feb2027defc3d866d9fbd62f11e4f6b9837527..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/sales_enquire.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Offer Sales</title> - <row_length>4</row_length> - <name>sales_enquire</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Comment</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>enquire</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>workflow_action</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/sales_offer.form b/product/Coramy/skins/coramy_crm/sales_offer.form deleted file mode 100755 index 60ed23cd8bad2cd537ef08f7d9b81c675ae7f6aa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/sales_offer.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Offer Sales</title> - <row_length>4</row_length> - <name>sales_offer</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Comment</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>offer</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>workflow_action</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/sales_opportunity_list.form b/product/Coramy/skins/coramy_crm/sales_opportunity_list.form deleted file mode 100755 index a70d05fb04f8eb803a17e00a2715a7fa10956330..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/sales_opportunity_list.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Folder Contents</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>contact_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[('Description', 'Description')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Title', 'Title'), ('sales_state', 'State'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('Title', "''"), ('sales_state', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>PERSON_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sales Opportunity', 'Sales Opportunity')]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>sales_opportunities</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contacts</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/sales_opportunity_view.form b/product/Coramy/skins/coramy_crm/sales_opportunity_view.form deleted file mode 100755 index ceed351ea94f385bf6c1825b48c93ed0a87f04aa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/sales_opportunity_view.form +++ /dev/null @@ -1,255 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Person Default View Form</title> - <row_length>4</row_length> - <name>General</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>ID</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">30</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Usual Name</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/Title</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Right</title> - <fields> - - <field><id>my_client_person_title_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>client</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>person</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Client persons</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getClientPersonTitleList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_client_organisation_title_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>client</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>organisation</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client organisations</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getClientOrganisationTitleList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>Middle</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Comments</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">100</width> - </values> - <tales> - <default>here/Description</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>List</title> - <fields> - - <field><id>item_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'id'), ('portal_type', 'Type'), ('Title', 'Title')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('portal_type', 'Type'), ('Title', 'Title')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_cookie>CONTACT_LIST</list_cookie> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name></selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contacts</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/sales_reset.form b/product/Coramy/skins/coramy_crm/sales_reset.form deleted file mode 100755 index 89f727342e58ae42f8fe1b8e92830bfa6a795041..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/sales_reset.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Offer Sales</title> - <row_length>4</row_length> - <name>sales_reset</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Comment</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>reset</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>workflow_action</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_crm/telephone_view.form b/product/Coramy/skins/coramy_crm/telephone_view.form deleted file mode 100755 index 8310e4b06a02acc4d0891bd1901bc0e6b51cd0c5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_crm/telephone_view.form +++ /dev/null @@ -1,240 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Telephone View</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_telephone_country</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Country</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTelephoneCountry</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_telephone_area</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Area</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTelephoneArea</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_telephone_number</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Number</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTelephoneNumber</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_telephone_extension</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Extension</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTelephoneExtension</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getDescription</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/Coramy_sendMailToUser.py b/product/Coramy/skins/coramy_custom/Coramy_sendMailToUser.py deleted file mode 100755 index 88792c21ea56bfe58fb2b7c4e41f095d863ba799..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Coramy_sendMailToUser.py +++ /dev/null @@ -1,34 +0,0 @@ -## Script (Python) "Coramy_sendMailToUser" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name='rc',mMsg='Message par défaut', mSubj='Sujet par défaut',**kw -##title= -## -try: - mailhost=getattr(context, context.portal_url.superValues('Mail Host')[0].id) -except: - raise AttributeError, "Cannot find a Mail Host object" - -mFrom = context.portal_properties.email_from_name+' <'+context.portal_properties.email_from_address+'>' - -# Only for doing test -if user_name == 'rc': - user_name = 'Romain_Courteaud' - -mTo = user_name + '@coramy.com' - -try: - # send mail to user - mailhost.send(mMsg,mTo,mFrom,mSubj) - # send mail to admin - mailhost.send(mMsg,mFrom,mFrom,mSubj) - -except: - mNewMsg = 'Sujet ' + mSubj + '\n' - mNewMsg += 'Destinataire ' + mTo + '\n' - mNewMsg += 'Message ' + mMsg + '\n' - - mailhost.send(mNewMsg,mFrom,mFrom,"ERP5:Coramy_sendMailToUser:Erreur") diff --git a/product/Coramy/skins/coramy_custom/Coramy_userLabelPrinterDefinition.py b/product/Coramy/skins/coramy_custom/Coramy_userLabelPrinterDefinition.py deleted file mode 100755 index 8e932be748202cf6fbe0678c2c8d2a0e21888a82..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Coramy_userLabelPrinterDefinition.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "Coramy_userLabelPrinterDefinition" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name=None -##title= -## -if user_name==None: - local_user = context.portal_membership.getAuthenticatedMember().getUserName() -else: - local_user = user_name - -printer_dict = { - 'Nicole_Denis' : 'Meto_XS40_2', - 'Christelle_Megret' : 'Meto_XS40_3', - 'Jocelyne_Olejarz' : 'Meto_XS40_4', - 'Nathalie_Wadoux' : 'Meto_XS40_5', - 'Chantal_Hannequin' : 'Meto_XS40_5', - 'Joelle_Gorriez': 'Meto_XS40_6', - 'Gaelle_Manier' : 'Meto_XS40_6' -} - -if local_user in printer_dict.keys(): - printer_name = printer_dict[local_user] -else: - printer_name = 'Meto_XS40_2' - -return printer_name diff --git a/product/Coramy/skins/coramy_custom/Coramy_userPrinterDefinition.py b/product/Coramy/skins/coramy_custom/Coramy_userPrinterDefinition.py deleted file mode 100755 index f6e1cb49e9fe06c312ee8185e778f8cd115d0e51..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Coramy_userPrinterDefinition.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Coramy_userPrinterDefinition" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name=None -##title= -## -if user_name==None: - local_user = context.portal_membership.getAuthenticatedMember().getUserName() -else: - local_user = user_name - -printer_dict = { -} - -if local_user in printer_dict.keys(): - printer_name = printer_dict[local_user] -else: - printer_name = 'Xerox_DC_440' - -return printer_name diff --git a/product/Coramy/skins/coramy_custom/FlatList.py b/product/Coramy/skins/coramy_custom/FlatList.py deleted file mode 100755 index 20eb3276fb1680e985a2980c7ceeebb6627166de..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/FlatList.py +++ /dev/null @@ -1,13 +0,0 @@ -## Script (Python) "FlatList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id, list_start -##title= -## -request = container.REQUEST -request.set('list_start', int(list_start)) - -return getattr(context,form_id)(request) diff --git a/product/Coramy/skins/coramy_custom/Inventory_checkConsistency.py b/product/Coramy/skins/coramy_custom/Inventory_checkConsistency.py deleted file mode 100755 index 8f38d26e73ccd718e130a176ab2212bf26e24e1e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Inventory_checkConsistency.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Inventory_checkConsistency" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -olist = list(context.inventaire_mp.objectValues()) + list(context.inventaire_pf.objectValues()) - -for o in olist: - for l in o.objectValues(spec=('CORAMY Inventory Line','ERP5 Inventory Line')): - if l.hasCellContent(): - for c in l.objectValues(spec=('CORAMY Inventory Cell','ERP5 Inventory Cell')): - inventory = getattr(c, 'inventory', 0.0) # We have no acquisition here (None at class level ?) - line_inventory = getattr(l, 'inventory', 0.0) - if line_inventory is None: line_inventory = 0.0 - if inventory == 0.0 and line_inventory != 0.0 and len(l.objectValues(spec=('CORAMY Inventory Cell','ERP5 Inventory Cell'))) == 1: - print "Fixing Error on %s" % c.getRelativeUrl() - c.edit(inventory = line_inventory, force_update =1 ) - -return printed diff --git a/product/Coramy/skins/coramy_custom/Inventory_copyDefault.py b/product/Coramy/skins/coramy_custom/Inventory_copyDefault.py deleted file mode 100755 index d95a02db698036ca829f9ced6351b63fd6d2f13d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Inventory_copyDefault.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Inventory_copyDefault" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -for l in context.objectValues(spec=('CORAMY Inventory Line','ERP5 Inventory Line')): - if l.hasCellContent(): - for c in l.objectValues(spec=('CORAMY Inventory Cell','ERP5 Inventory Cell')): - inventory = getattr(c, 'inventory', 0.0) # We have acquisition here - if inventory is None: inventory=0.0 - print "Update Cell %s %s" % (getattr(c, 'inventory', 0.0), inventory) - if inventory == 0.0: c.edit(inventory = inventory, force_update=1) # Only update if 0.0 - else: - inventory = getattr(l, 'inventory', 0.0) - if inventory is None: inventory=0.0 - print "Update Line %s %s" % (getattr(l, 'inventory', 0.0), inventory) - if inventory == 0.0: l.edit(inventory = inventory, force_update=1) # Only update if 0.0 - -return printed diff --git a/product/Coramy/skins/coramy_custom/Inventory_updateDefault.py b/product/Coramy/skins/coramy_custom/Inventory_updateDefault.py deleted file mode 100755 index 141f1fa7913dc704bb1c4c378d1c32ed99103193..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Inventory_updateDefault.py +++ /dev/null @@ -1,18 +0,0 @@ -## Script (Python) "Inventory_updateDefault" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -for o in context.inventaire_mp.objectValues(): - print "Inventory copy default %s" % o.getRelativeUrl() - o.activate(priority=3).Inventory_copyDefault() - -for o in context.inventaire_pf.objectValues(): - print "Inventory copy default %s" % o.getRelativeUrl() - o.activate(priority=3).Inventory_copyDefault() - -return printed diff --git a/product/Coramy/skins/coramy_custom/Item_doWorkflowTransition.py b/product/Coramy/skins/coramy_custom/Item_doWorkflowTransition.py deleted file mode 100755 index bc93093aefb13433133318fc1cbbcfee4edf9540..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Item_doWorkflowTransition.py +++ /dev/null @@ -1,39 +0,0 @@ -## Script (Python) "Item_doWorkflowTransition" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=workflow_action='', workflow_id='' -##title= -## -# A shorter version of of workflow_status_modify and folder_workflow_status_modify ... - -error_message = '' - -action_list = context.portal_workflow.getActionsFor(context) -action_list = filter(lambda x:x.has_key('id'), action_list ) -action_id_list = map(lambda x:x['id'], action_list) - -# If the user is not allowed to do this transition, it will not be in action_list -if workflow_action in action_id_list: - context.portal_workflow.doActionFor( - context, - workflow_action, - wf_id=workflow_id - ) - -# We will check if there's an error_message -history_data = None -try: - history_data = context.portal_workflow.getInfoFor(ob=context, name='history') -except: - pass - redirect_url = None - if history_data is not None: - last_history_data = history_data[len(history_data)-1] - this_error = last_history_data.get('error_message') - if this_error != None and this_error != '': - error_message += this_error + "-" - -return error_message diff --git a/product/Coramy/skins/coramy_custom/Item_resetLocation.py b/product/Coramy/skins/coramy_custom/Item_resetLocation.py deleted file mode 100755 index cb9e434201340e18516b41aa28f93c48fe6c8d48..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/Item_resetLocation.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "Item_resetLocation" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -item = context - -item.setLocation('') diff --git a/product/Coramy/skins/coramy_custom/PackingList_cleanupAssortiment.py b/product/Coramy/skins/coramy_custom/PackingList_cleanupAssortiment.py deleted file mode 100755 index 146697632d4e9fedcf9f17d78fe68d2ffe855c08..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PackingList_cleanupAssortiment.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "PackingList_cleanupAssortiment" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# This script cleans packing lists we deffective quantities equal to 0.0 by resetting quantities -# to values in the simulation - -for movement_brain in context.PackingList_searchAssortiment(): - movement = movement_brain.getObject() - if movement.getQuantity() == 0.0: - if movement.getRelatedQuantity() is not None: - print "Fix movement %s from %s to %s" % (movement.getRelativeUrl(), movement.getQuantity(), movement.getRelatedQuantity()) - #movement.setQuantity(movement.getRelatedQuantity()) - else: - print "### Error movement %s has no simulation" % movement.getRelativeUrl() - else: - print "### NONSENSE on %s" % movement.getRelativeUrl() - -return printed diff --git a/product/Coramy/skins/coramy_custom/PackingList_searchAssortiment.zsql b/product/Coramy/skins/coramy_custom/PackingList_searchAssortiment.zsql deleted file mode 100755 index 3cae739fa46862c4562ecb13f239588c48290028..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PackingList_searchAssortiment.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT - movement_c.* -FROM - catalog, catalog AS resource, movement, catalog AS movement_c -WHERE - movement.delivery_uid = catalog.uid -AND catalog.portal_type = "Sales Packing List" -AND resource.uid = movement.resource_uid -AND resource.portal_type = "Assortiment" -AND (movement.quantity is NULL OR movement.quantity = 0.0) -AND (movement.target_quantity is NULL OR movement.target_quantity = 0.0) -AND movement_c.uid = movement.uid -AND movement_c.portal_type = "Sales Packing List Line" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/PackingList_setTargetStopToTargetStart.py b/product/Coramy/skins/coramy_custom/PackingList_setTargetStopToTargetStart.py deleted file mode 100755 index d12dfbe7b985b218a9f596d3d9d73494f477b64a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PackingList_setTargetStopToTargetStart.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "PackingList_setTargetStopToTargetStart" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -packing_list = context -packing_list.setTargetStopDate(packing_list.getTargetStartDate()) diff --git a/product/Coramy/skins/coramy_custom/PdfTemplate_changePdfStylesheet.py b/product/Coramy/skins/coramy_custom/PdfTemplate_changePdfStylesheet.py deleted file mode 100755 index 3ee077fda33136c461382a280747602dcf18d6cd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PdfTemplate_changePdfStylesheet.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "PdfTemplate_changePdfStylesheet" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=stylesheet_name='default_pdf_template_save' -##title= -## -context.setProperty('pdf_Stylesheet',stylesheet_name) diff --git a/product/Coramy/skins/coramy_custom/PieceTissu_deleteFromMovement.py b/product/Coramy/skins/coramy_custom/PieceTissu_deleteFromMovement.py deleted file mode 100755 index 9375c61ba3cfe6d57a02de98aae447c600c3a15b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PieceTissu_deleteFromMovement.py +++ /dev/null @@ -1,42 +0,0 @@ -## Script (Python) "PieceTissu_deleteFromMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -piece_dict = {} -piece_dict['41874']='livraison_fabrication/2004/7/movement_0_0' -piece_dict['40398']='livraison_fabrication/1838/4/movement_5_0' -piece_dict['41975']='livraison_fabrication/1873/11/movement_0_0' -piece_dict['42254']='mouvement_mp/102/19/movement_0_0' -piece_dict['36473']='livraison_fabrication/1967/1/movement_0_0' -piece_dict['36555']='mouvement_mp/98/9/movement_0_0' -piece_dict['40226']='mouvement_mp/102/9/movement_0_0' -piece_dict['40145']='livraison_fabrication/2028/8/movement_3_0' -piece_dict['40092']='livraison_fabrication/1946/1/movement_0_0' -piece_dict['41789']='mouvement_mp/82/1/movement_0_0' -piece_dict['41586']='livraison_fabrication/1950/2/movement_2_0' - -for key in piece_dict.keys() : - mouvement = context.restrictedTraverse(piece_dict[key]) - if mouvement is not None : - if piece_dict[key].find('mouvement_mp') != -1 : - if mouvement.getProductionQuantity() > 0 : - item_id_list = mouvement.getProducedItemIdList() - new_item_id_list = filter(lambda k_item: k_item != key, item_id_list) - mouvement.setProducedItemIdList(new_item_id_list) - else : - item_id_list = mouvement.getConsumedItemIdList() - new_item_id_list = filter(lambda k_item: k_item != key, item_id_list) - mouvement.setConsumedItemIdList(new_item_id_list) - else : - item_id_list = mouvement.getItemIdList() - new_item_id_list = filter(lambda k_item: k_item != key, item_id_list) - mouvement.setItemIdList(new_item_id_list) - - print piece_dict[key], item_id_list, new_item_id_list, key - -return printed diff --git a/product/Coramy/skins/coramy_custom/PieceTissu_exportList.py b/product/Coramy/skins/coramy_custom/PieceTissu_exportList.py deleted file mode 100755 index 3b681482b26ed58685661e0ed1285472a2127e19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PieceTissu_exportList.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "PieceTissu_exportList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -piece_list = context.zGetLocatedPieceTissuList() -cr = '\r' -tab = '\t' -movement_log = 'Piece'+tab+tab+'Quantité initiale'+tab+'Quantité restante'+cr - -for piece_item in piece_list : - piece= piece_item.getObject() - movement_log += piece.getRelativeUrl()+tab+piece.getId()+tab+str(piece.getQuantity())+tab+str(piece.getRemainingQuantity())+tab+piece.getLocation()+tab+piece.getComment().replace('\r',' ') + cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return movement_log diff --git a/product/Coramy/skins/coramy_custom/PieceTissu_findNegativeQty.py b/product/Coramy/skins/coramy_custom/PieceTissu_findNegativeQty.py deleted file mode 100755 index f6ab93e7ff8c702038e75e8725389ecdcfcabb3f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PieceTissu_findNegativeQty.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "PieceTissu_findNegativeQty" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -cr = '\n' -tab = '\t' -movement_log = 'Problèmes'+cr - -piece_list = context.portal_catalog(portal_type=('Piece Tissu',)) - -for piece_item in piece_list : - piece = piece_item.getObject() - if piece is not None : - qty = piece.getRemainingQuantity() - if qty < 0 : - movement_log += piece.getRelativeUrl()+tab+str(qty)+cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return movement_log diff --git a/product/Coramy/skins/coramy_custom/PieceTissu_findSuspectMovement.py b/product/Coramy/skins/coramy_custom/PieceTissu_findSuspectMovement.py deleted file mode 100755 index 930bf31127670cfbd2ccb5f6943a0fce2fa0e019..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/PieceTissu_findSuspectMovement.py +++ /dev/null @@ -1,69 +0,0 @@ -## Script (Python) "PieceTissu_findSuspectMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -cr = '\n' -tab = '\t' -movement_log = 'Id pieces'+tab+'piece_relative_url'+tab+'In-Out'+tab+'number'+tab+'relative_url_movement'+cr - -piece_list = context.portal_catalog(portal_type=('Piece Tissu',)) -#piece_list = context.portal_catalog(id = ('41890','36921') , portal_type="Piece Tissu") - -for piece_item in piece_list : - out_movement_list = '' - out_count = 0 - in_movement_list = '' - in_count = 0 - suspect_movement_list = '' - suspect_count = 0 - piece = piece_item.getObject() - if piece is not None : - related_movement_list = piece.getAggregateRelatedValueList() - for movement in related_movement_list : - movement_relative_url = movement.getRelativeUrl() - if movement_relative_url.find('livraison_fabrication') != -1 : - out_movement_list += movement_relative_url + tab - out_count += 1 - elif movement_relative_url.find('inventaire_mp') != -1 : - in_movement_list += movement_relative_url + tab - in_count += 1 - elif movement_relative_url.find('livraison_achat') != -1 : - in_movement_list += movement_relative_url + tab - in_count += 1 - elif movement_relative_url.find('mouvement_mp') != -1 : - if movement.getProductionQuantity() > 0 : - in_movement_list += movement_relative_url + tab - in_count += 1 - elif movement.getConsumptionQuantity() > 0 : - out_movement_list += movement_relative_url + tab - out_count += 1 - else : - suspect_movement_list += movement_relative_url + tab - suspect_count += 1 - else : - suspect_movement_list += movement_relative_url + tab - suspect_count += 1 - if (in_count==1 and out_count==1 and suspect_count==0) or (in_count==1 and out_count==0 and suspect_count==0) or (in_count==0 and out_count==0 and suspect_count==0): - pass - elif (in_count==0 and out_count==1 and suspect_count==0) : - if piece.aq_parent.getPortalType()=="Piece Tissu" : - pass - else : - movement_log += piece.getId() + tab + piece.getRelativeUrl() + tab + 'OUT' + tab + str(out_count) + tab + out_movement_list + cr - else : - if in_count > 0 : - movement_log += piece.getId() + tab + piece.getRelativeUrl() + tab + 'IN' + tab + str(in_count) + tab + in_movement_list + cr - if out_count > 0 : - movement_log += piece.getId() + tab + piece.getRelativeUrl() + tab + 'OUT' + tab + str(out_count) + tab + out_movement_list + cr - if suspect_count > 0 : - movement_log += piece.getId() + tab + piece.getRelativeUrl() + tab + 'SUSPECT' + tab + str(suspect_count) + tab + suspect_movement_list + cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return movement_log diff --git a/product/Coramy/skins/coramy_custom/SalesOrder_updateAssortimentPrice.py b/product/Coramy/skins/coramy_custom/SalesOrder_updateAssortimentPrice.py deleted file mode 100755 index a3bbd117da829f229af878f558c1e4cdacde34c3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/SalesOrder_updateAssortimentPrice.py +++ /dev/null @@ -1,246 +0,0 @@ -## Script (Python) "SalesOrder_updateAssortimentPrice" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -assort_dict ={} -assort_dict['009H401_12P_H']=51.00 -assort_dict['009H402_12P_H']=47.40 -assort_dict['009H403_12P_H']=57.00 -assort_dict['108E5386_12P_H']=150.00 -assort_dict['108H401_12P_H']=145.80 -assort_dict['11414442_12P_H']=182.40 -assort_dict['11495210_12P_H']=171.60 -assort_dict['114H401_12P_H']=264.00 -assort_dict['114H402_12P_H']=240.00 -assort_dict['114H403_12P_H']=214.80 -assort_dict['11684401_12P_H']=136.80 -assort_dict['116H401_12P_H']=147.00 -assort_dict['116H402_12P_H']=144.00 -assort_dict['118H401_12P_H']=151.20 -assort_dict['118H402_12P_H']=117.60 -assort_dict['124H401_12P_H']=135.60 -assort_dict['134A0104_12P_H']=115.20 -assort_dict['136H401_12P_H']=149.40 -assort_dict['136H402_12P_H']=192.00 -assort_dict['136H403_12P_H']=192.00 -assort_dict['137H401_18P_H']=234.00 -assort_dict['140H401_12P_H']=107.16 -assort_dict['140H402_12P_H']=109.59 -assort_dict['141H401_12P_H']=131.64 -assort_dict['14693101_12P_H']=199.20 -assort_dict['153E5245_12P_H']=166.80 -assort_dict['153F5340_12P_H']=166.80 -assort_dict['153H402_12P_H']=186.00 -assort_dict['153H403_12P_H']=183.00 -assort_dict['15554770_12P_H']=144.00 -assort_dict['15873440_12P_H']=172.80 -assort_dict['158H401_12P_H']=138.00 -assort_dict['16863440_12P_H']=171.60 -assort_dict['168H401_12P_H']=150.00 -assort_dict['168H402_12P_H']=168.00 -assort_dict['168H403_12P_H']=138.00 -assort_dict['169H401_12P_H']=107.16 -assort_dict['169H402_12P_H']=152.40 -assort_dict['169H403_12P_H']=163.20 -assort_dict['19015387_18P_H']=216.00 -assort_dict['19015896_12P_H']=144.00 -assort_dict['213H401_12P_H']=148.20 -assort_dict['223H401_12P_H']=139.20 -assort_dict['223H402_12P_H']=139.20 -assort_dict['230H401_12P_H']=159.60 -assort_dict['232H401_12P_H']=142.80 -assort_dict['232H402_12P_H']=140.40 -assort_dict['232H403_12P_H']=156.00 -assort_dict['233H402_12P_H']=126.00 -assort_dict['233H403_12P_H']=216.00 -assort_dict['236H401_12P_H']=174.00 -assort_dict['237H401_12P_H']=150.00 -assort_dict['237H402_12P_H']=138.00 -assort_dict['237H403_12P_H']=118.80 -assort_dict['237H404_12P_H']=171.00 -assort_dict['237H405_12P_H']=135.00 -assort_dict['237H406_12P_H']=115.20 -assort_dict['237H407_12P_H']=174.00 -assort_dict['237H412_12P_H']=150.00 -assort_dict['240H401_12P_H']=146.40 -assort_dict['240H402_12P_H']=151.20 -assort_dict['240H403_12P_H']=139.20 -assort_dict['245H401_12P_H']=216.00 -assort_dict['246H401_12P_H']=187.20 -assort_dict['247H401_12P_H']=234.00 -assort_dict['247H402_12P_H']=216.00 -assort_dict['24800156_12P_H']=82.80 -assort_dict['24805576_12P_H']=83.40 -assort_dict['24850104_12P_H']=94.80 -assort_dict['24850134_12P_H']=90.00 -assort_dict['24860157_12P_H']=87.60 -assort_dict['248B5000_12P_H']=91.20 -assort_dict['248H402_12P_H']=216.00 -assort_dict['248H403_12P_H']=231.60 -assort_dict['248H404_12_H']=201.60 -assort_dict['248H405_12P_H']=216.00 -assort_dict['248H406_12P_H']=211.20 -assort_dict['248H407_12P_H']=188.40 -assort_dict['248H408_12P_H']=190.80 -assort_dict['248H409_12P_H']=183.00 -assort_dict['248H410_12P_H']=196.80 -assort_dict['25040169_12P_H']=81.00 -assort_dict['25042733_12P_H']=88.80 -assort_dict['25065455_12P_H']=114.00 -assort_dict['251H401_12P_H']=180.00 -assort_dict['251H402_12P_H']=189.60 -assort_dict['251H403_12P_H']=148.80 -assort_dict['251H405_12P_H']=213.60 -assort_dict['25365673_12P_H']=98.40 -assort_dict['25415284_12P_H']=102.00 -assort_dict['25415674_12P_H']=99.60 -assort_dict['26220104_12P_H']=126.00 -assort_dict['27165093_12P_H']=160.80 -assort_dict['27284967_12P_H']=159.00 -assort_dict['274E5600_12P_H']=152.40 -assort_dict['335H401_12P_H']=174.00 -assort_dict['335H402_12P_H']=174.00 -assort_dict['352H401_12P_H']=60.60 -assort_dict['354H401_12P_H']=97.32 -assort_dict['372H401_12P_H']=123.60 -assort_dict['401H401_12P_H']=74.40 -assort_dict['401H402_12P_H']=127.20 -assort_dict['405H401_12P_H']=116.40 -assort_dict['406H402_18P_H']=115.20 -assort_dict['406H403_12P_H']=88.80 -assort_dict['40700157_12P_H']=72.00 -assort_dict['40750109_12P_H']=67.20 -assort_dict['408H401_12P_H']=102.00 -assort_dict['41335586_12P_H']=68.40 -assort_dict['415H401_18P_H']=104.40 -assort_dict['415H402_12P_H']=90.00 -assort_dict['415H404_12P_H']=99.60 -assort_dict['416H401_12P_H']=87.60 -assort_dict['416H402_12P_H']=91.20 -assort_dict['416H403_12P_H']=80.40 -assort_dict['416H404_12P_H']=114.00 -assort_dict['420H401_12P_H']=96.00 -assort_dict['42225455_12P_H']=84.00 -assort_dict['42232733_12P_H']=70.80 -assort_dict['423H401_12P_H']=94.80 -assort_dict['423H402_18P_H']=147.60 -assort_dict['423H403_18P_H']=178.20 -assort_dict['423H404_12P_H']=93.60 -assort_dict['42420163_12P_H']=59.40 -assort_dict['42435683_12P_H']=64.80 -assort_dict['500H401_12P_H']=79.20 -assort_dict['511H401_12P_H']=100.20 -assort_dict['511H402_12P_H']=99.00 -assort_dict['518E0157_12P_H']=67.20 -assort_dict['518H401_12P_H']=76.80 -assort_dict['519H401_12P_H']=90.00 -assort_dict['52020109_12P_H']=75.60 -assort_dict['52185530_12P_H']=71.40 -assort_dict['527H401_12P_H']=103.20 -assort_dict['527H402_12P_H']=68.40 -assort_dict['52830164_12P_H']=54.00 -assort_dict['52835683_12P_H']=68.40 -assort_dict['528H401_12P_H']=90.00 -assort_dict['53580108_12P_H']=51.60 -assort_dict['536H401_12P_H']=74.76 -assort_dict['536H402_12P_H']=85.68 -assort_dict['536H403_12P_H']=67.32 -assort_dict['537H401_12P_H']=74.76 -assort_dict['537K0107_12P_H']=44.40 -assort_dict['537K4747_12P_H']=58.80 -assort_dict['538H401_12P_H']=83.40 -assort_dict['538H402_12P_H']=114.00 -assort_dict['543H401_12P_H']=82.80 -assort_dict['590A5151_12P_H']=42.00 -assort_dict['593K4747_12P_H(2-8)']=36.00 -assort_dict['593K4747_12P_H(6-24m)']=33.60 -assort_dict['593M5000_12P_H']=38.40 -assort_dict['636H401_12P_H']=70.80 -assort_dict['656H401_12P_H']=52.08 -assort_dict['658H401_12P_H']=72.84 -assort_dict['701H401_12P_H']=47.40 -assort_dict['701H402_12P_H']=43.20 -assort_dict['701H403_12P_H']=59.40 -assort_dict['70255000_12P_H(10-16)']=43.80 -assort_dict['70255000_16P_H(2-8)']=52.80 -assort_dict['702H401_12P_H']=45.00 -assort_dict['709H401_12P_H']=54.00 -assort_dict['712H401_12P_H']=51.60 -assort_dict['712H402_12P_H']=49.80 -assort_dict['712H403_12P_H']=57.00 -assort_dict['712H404_18P_H']=85.50 -assort_dict['712K0108_12P_H']=39.00 -assort_dict['712K0150_12P_H']=42.00 -assort_dict['713H401_12P_H']=56.40 -assort_dict['71414760_12P_H']=44.40 -assort_dict['71415665_16P_H']=44.00 -assort_dict['714B5306_12P_H']=43.80 -assort_dict['714H401_12P_H']=42.00 -assort_dict['714H402_12P_H']=51.48 -assort_dict['714H403_12P_H']=42.24 -assort_dict['714H404_12P_H']=51.60 -assort_dict['715H401_12P_H']=57.60 -assort_dict['715H402_12P_H']=51.60 -assort_dict['720A5265_12P_H']=40.20 -assort_dict['720H401_12P_H']=52.20 -assort_dict['720H402_12P_H']=64.80 -assort_dict['72374749_12P_H']=52.80 -assort_dict['72375665_16P_H']=56.00 -assort_dict['723H401_18P_H']=83.70 -assort_dict['723H402_12P_H']=70.80 -assort_dict['724H401_12P_H']=79.56 -assort_dict['724h402_18P_H']=90.00 -assort_dict['725H401_12P_H']=70.80 -assort_dict['725J0108_12P_H']=43.20 -assort_dict['725J0150_12P_H']=43.80 -assort_dict['727H401_12P_H']=60.00 -assort_dict['72845000_12P_H(10-16)']=54.00 -assort_dict['72845000_16P_H(2-8)']=63.20 -assort_dict['75105143_12P_H']=61.20 -assort_dict['751H401_12P_H']=75.60 -assort_dict['751H402_12P_H']=63.00 -assort_dict['755H401_16P_H']=76.00 -assort_dict['769H401_12P_H']=70.44 -assort_dict['769H402_16P_H']=91.20 -assort_dict['77045143_12P_H']=47.40 -assort_dict['770H401_12P_H']=67.32 -assort_dict['770H402_12P_H']=64.92 -assort_dict['770H403_12P_H']=79.20 -assort_dict['770H404_16P_H']=116.00 -assort_dict['770H405_12P_H']=63.00 -assort_dict['77115217_12P_H']=62.40 -assort_dict['77115401_12P_H']=70.80 -assort_dict['771H401_12P_H']=66.72 -assort_dict['771H402_12P_H']=97.80 -assort_dict['771H403_16P_H']=84.00 -assort_dict['771H404_12P_H']=66.00 -assort_dict['772H401_12P_H']=68.40 -assort_dict['774H402_16P_H']=108.00 -assort_dict['774H403_16P_H']=130.40 -assort_dict['775H401_12P_H']=88.80 -assort_dict['775H402_16P_H']=159.20 -assort_dict['776H401_16P_H']=110.40 -assort_dict['778H401_16P_H']=120.00 -assort_dict['778H402_12P_H']=85.80 -assort_dict['855H401_12P_H']=39.00 -assort_dict['869H401_12P_H']=53.40 -assort_dict['910H401_12P_H']=149.40 - -order = context -assort_keys = assort_dict.keys() -movement_list = order.getMovementList() -for movement in movement_list : - resource = movement.getResourceValue() - if resource is not None : - if resource.getPortalType() == "Assortiment" : - assort_id = resource.getId() - if assort_id in assort_keys : - movement.setProperty(key='price',value=assort_dict[assort_id]) - #print "prix actuel : "+str(movement.getPrice())+" prix assortiment : "+str(assort_dict[assort_id]) - -#return printed diff --git a/product/Coramy/skins/coramy_custom/SalesOrder_zGetCarnetCommande.zsql b/product/Coramy/skins/coramy_custom/SalesOrder_zGetCarnetCommande.zsql deleted file mode 100755 index 6e4200d25e8b5a6f1fcb43aeece0b6fd134149de..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/SalesOrder_zGetCarnetCommande.zsql +++ /dev/null @@ -1,36 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT group_client.title, sum(movement.quantity) AS qte1, sum(movement.total_price) AS total_prix1,sum(other_movement.quantity) AS qte2, sum(other_movement.total_price) AS total_prix2 -FROM catalog AS sale_order, catalog AS order_line, category AS category_sc -LEFT JOIN catalog as order_cell ON (order_cell.parent_uid = order_line.uid AND order_cell.portal_type = "Delivery Cell") -LEFT JOIN movement ON ( movement.uid = order_cell.uid -AND movement.has_cell_content = 0 ) -LEFT JOIN movement AS other_movement ON ( other_movement.uid = order_line.uid -AND other_movement.has_cell_content = 0 ) -LEFT JOIN category AS category_group ON ( category_group.uid=sale_order.uid -AND category_group.base_category_uid = <dtml-var "portal_categories.group.uid"> -AND category_group.category_strict_membership = 1 ) -LEFT JOIN catalog AS group_client ON ( group_client.uid = category_group.category_uid ) - -WHERE sale_order.portal_type = "Sales Order" -AND order_line.parent_uid = sale_order.uid -AND order_line.portal_type = "Sales Order Line" - -AND (sale_order.simulation_state = "planned" -OR sale_order.simulation_state = "ordered" -OR sale_order.simulation_state = "draft" -OR sale_order.simulation_state = "confirmed") - -AND category_sc.uid=sale_order.uid -AND category_sc.base_category_uid = <dtml-var "portal_categories.source_section.uid"> -AND category_sc.category_uid = <dtml-var "portal_categories.group.Coramy.Houvenaegel.uid"> - -GROUP BY group_client.title \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/base_edit2.py b/product/Coramy/skins/coramy_custom/base_edit2.py deleted file mode 100755 index 9e6c78ce6c95aac0d1930475b297231c5fea10fe..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/base_edit2.py +++ /dev/null @@ -1,119 +0,0 @@ -## Script (Python) "base_edit2" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id, selection_index=0, selection_name='' -##title= -## -# Updates attributes of an Zope document -# which is in a class inheriting from ERP5 Base -# -# TODO -# - Implement validation of matrix fields -# - Implement validation of list fields -# - -from Products.Formulator.Errors import ValidationError, FormValidationError - -request=context.REQUEST - -try: - # Define form basic fields - form = getattr(context,form_id) - # Validate - form.validate_all_to_request(request) - # Basic attributes - kw = {} - # Parse attributes - for f in form.get_fields(): - k = f.id - v = getattr(request,k,None) - if v is not None: - if k[0:3] == 'my_': - # We only take into account - # the object attributes - k = k[3:] - kw[k] = v - # Update matrix attributes - matrixbox = request.get('matrixbox') - if matrixbox is not None: - matrixbox_field = form.get_field('matrixbox') - cell_base_id = matrixbox_field.get_value('cell_base_id') - kd = {} - kd['base_id'] = cell_base_id - gv = {} - if matrixbox_field.has_value('global_attributes'): - hidden_attributes = map(lambda x:x[0], matrixbox_field.get_value('global_attributes')) - for k in hidden_attributes: - gv[k] = getattr(request, k,None) - if matrixbox_field.get_value('update_cell_range'): - # Update cell range each time it is modified - lines = matrixbox_field.get_value('lines') - columns = matrixbox_field.get_value('columns') - tabs = matrixbox_field.get_value('tabs') - column_ids = map(lambda x: x[0], columns) - line_ids = map(lambda x: x[0], lines) - tab_ids = map(lambda x: x[0], tabs) - cell_range = context.getCellRange(base_id = cell_base_id) - if cell_range != [line_ids, column_ids, tab_ids]: - if len(tab_ids) > 0: - context.setCellRange(line_ids, column_ids, tab_ids, base_id=cell_base_id) - else: - context.setCellRange(line_ids, column_ids, base_id=cell_base_id) - for k,v in matrixbox.items(): - # Only update cells which still exist - if context.hasInRange(*k, **kd): - c = context.newCell(*k, **kd) - c.edit(**gv) # Make sure global properties are set (ie. mapped_value_property_list for ex. - if v.has_key('variated_property'): - # For Variated Properties - value = v['variated_property'] - del v['variated_property'] - if gv.has_key('mapped_value_property_list'): - # Change the property which is defined by the - # first element of mapped_value_property_list - key = gv['mapped_value_property_list'][0] - v[key] = value - c.edit(**v) - else: - return "Cell %s does not exist" % str(k) - # Update listbox attributes - listbox = request.get('listbox') - if listbox is not None: - listbox_field = form.get_field('listbox') - gv = {} - if listbox_field.has_value('global_attributes'): - hidden_attributes = map(lambda x:x[0], listbox_field.get_value('global_attributes')) - for k in hidden_attributes: - gv[k] = getattr(request, k,None) - for url, v in listbox.items(): - o = context.restrictedTraverse(url) - v.update(gv) - o.edit(**v) - # Update basic attributes - #return kw - context.edit(REQUEST=request,**kw) -except FormValidationError, validation_errors: - # Pack errors into the request - field_errors = form.ErrorFields(validation_errors) - request.set('field_errors', field_errors) - return form(request) -else: - if not selection_index: - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Data+Updated.' - ) - else: - redirect_url = '%s/%s?selection_index=%s&selection_name=%s&%s' % ( context.absolute_url() - , form_id - , selection_index - , selection_name - , 'portal_status_message=Data+Updated.' - ) - - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_custom/breadcrumb.pt b/product/Coramy/skins/coramy_custom/breadcrumb.pt deleted file mode 100755 index cca47e909c2e15a07ad6285ba107f8f474a48778..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/breadcrumb.pt +++ /dev/null @@ -1,54 +0,0 @@ -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html> - <head> - <title tal:content="template/title">The title</title> - </head> - <body> - - <div metal:define-macro="small_breadcrumb"> - <table width="100%"> - <tr> - <td nowrap align="left"> - <span tal:repeat="item here/breadcrumbs"><a href="url goes here" tal:attributes="href python:'%s/view' % item ['url']"><span tal:replace="item/title" /></a> / </span></td> - <td align="right"></td> - </tr> - </table> - </div> - - <div metal:define-macro="full_breadcrumb"> - <table width="100%"> - <tr> - <td nowrap align="left"> - <span tal:repeat="item here/breadcrumbs"><a href="url goes here" tal:attributes="href python:'%s/view' % item ['url']"><span tal:replace="item/title" /></a> / </span></td> - <td align="right" tal:condition="python: not here.portal_membership.isAnonymousUser()"> <a href="undo_form">Créé</a> par : <span tal:replace="python:here.getOwnerInfo()['id']" /> - <span tal:replace="here/bobobase_modification_time" /></td> - <td align="right" tal:condition="python: here.portal_membership.isAnonymousUser()"> </td> - </tr> - </table> - </div> - - - - </body> - - -</html> diff --git a/product/Coramy/skins/coramy_custom/changeSourceAdministrationList.py b/product/Coramy/skins/coramy_custom/changeSourceAdministrationList.py deleted file mode 100755 index b09882cd9ae31a7f05a74d1db9c8d9654af3087b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/changeSourceAdministrationList.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "changeSourceAdministrationList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -order_list = context.changeSourceAdministrationSQL() -i = 1 -for order in order_list: - - - order_object = order.getObject() - source_admin = order_object.getSourceAdministration() - - if source_admin != 'person/347': - print order_object.getId(), order_object.getComment() - i += 1 - -print 'fin' -return printed diff --git a/product/Coramy/skins/coramy_custom/changeSourceAdministrationSQL.zsql b/product/Coramy/skins/coramy_custom/changeSourceAdministrationSQL.zsql deleted file mode 100755 index 951aa9059d9a20ef1293c5e256ae1f8435d43641..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/changeSourceAdministrationSQL.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT id, relative_url, path, Description -FROM catalog -WHERE simulation_state = "draft" -AND portal_type = "Sales Order" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/check_production_delivery.py b/product/Coramy/skins/coramy_custom/check_production_delivery.py deleted file mode 100755 index 3d22d3886eabbde3e4427bee8dc5912c869c64bb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/check_production_delivery.py +++ /dev/null @@ -1,36 +0,0 @@ -## Script (Python) "check_production_delivery" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_list = context.object_action_list(selection_name='production_packing_list_selection') - -for delivery in delivery_list : - print '\n'+'Livraison :'+delivery.getId() - movement_list = delivery.getMovementList() - for movement in movement_list : - item_list = movement.getAggregateValueList() - if not item_list in ([], None) : - quantity = 0 - for item in item_list : -# print movement.getResource(),movement.getVariationCategoryList(),item.getResource(),item.getVariationCategoryList() - # verify if resource of item == resource of movement - if movement.getResource() == item.getResource() : - # check if variation_category is the same - if movement.getVariationCategoryList() != item.getVariationCategoryList() : - print 'Problème de variante',movement.getVariationCategoryList(),item.getId(),item.getVariationCategoryList() - else : - print 'Problème de resource',movement.getResource(),item.getId(),item.getResource() -# print movement.getResource(), movement.getItemIdList() - - # verify if quantity of movement == sum (item.getRemainingQuantity) - quantity += item.getRemainingQuantity() - - if quantity != movement.getTargetQuantity() : - print 'Problème de quantité',movement.getTargetQuantity(),round(quantity,4) - -return printed diff --git a/product/Coramy/skins/coramy_custom/getInfo.py b/product/Coramy/skins/coramy_custom/getInfo.py deleted file mode 100755 index 274833548319d891e3625de473e8f100daf5b763..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/getInfo.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "getInfo" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return context.portal_type diff --git a/product/Coramy/skins/coramy_custom/getListboxSearchMethod.py b/product/Coramy/skins/coramy_custom/getListboxSearchMethod.py deleted file mode 100755 index a4f7d4b204e9d01591c9a7fe152c611d04512f0f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/getListboxSearchMethod.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "getListboxSearchMethod" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -result='portal_catalog' -return result diff --git a/product/Coramy/skins/coramy_custom/getOneLineShortDescription.py b/product/Coramy/skins/coramy_custom/getOneLineShortDescription.py deleted file mode 100755 index a5b6a6a189fce2d967bcb1bdc82c366104077852..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/getOneLineShortDescription.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "getOneLineShortDescription" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=description='',len_max=100 -##title= -## -# cut the description to fit under len_max caracteres -from string import join - -result = description.split('\n')[0] - -if len(result) > len_max: - result = join(result[:len_max].split(' ')[:-2]) + '...' -else: - result = description - -return result diff --git a/product/Coramy/skins/coramy_custom/goTest.py b/product/Coramy/skins/coramy_custom/goTest.py deleted file mode 100755 index 2766d777b3a01c7ef41460d826c95f38267a8e23..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/goTest.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "goTest" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -#return context.setVariationBaseCategoryList -context.setVariationBaseCategoryList(('coloris')) -return context.getVariationBaseCategoryList(), context.variation_base_category_list diff --git a/product/Coramy/skins/coramy_custom/launchChangeEipAndCollection.py b/product/Coramy/skins/coramy_custom/launchChangeEipAndCollection.py deleted file mode 100755 index 9e3613aef8de41fe0cd6c5deb77d89dd9157dc2b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchChangeEipAndCollection.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "launchChangeEipAndCollection" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -item_list = context.zGetEipChangeObjectlist() -cr = '\n' -tab = '\t' - -for item_item in item_list : - item = item_item.getObject() - if item is not None: - item.activate(priority=2).updateEipAndCollection() - -#request.RESPONSE.setHeader('Content-Type','application/text') - -return 'lancé'+str(len(item_list)) diff --git a/product/Coramy/skins/coramy_custom/launchResetLocationOnLocatedPieceTissu.py b/product/Coramy/skins/coramy_custom/launchResetLocationOnLocatedPieceTissu.py deleted file mode 100755 index fa900fc0dc921eef4fbe40d2a64a76c2dc0b79f6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchResetLocationOnLocatedPieceTissu.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "launchResetLocationOnLocatedPieceTissu" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -item_list = context.zGetLocatedPieceTissuList() -cr = '\n' -tab = '\t' - -for item_item in item_list : - item = item_item.getObject() - if item is not None: - context.portal_activities.newMessage('SQLDict', item.getPath(), None, {}, 'Item_resetLocation') - -#request.RESPONSE.setHeader('Content-Type','application/text') - -return 'fait' diff --git a/product/Coramy/skins/coramy_custom/launchResetTargetQtyOnItemAggregatedMovement.py b/product/Coramy/skins/coramy_custom/launchResetTargetQtyOnItemAggregatedMovement.py deleted file mode 100755 index 7c295b3a1bc55f697e5a513aa6e6d57d7ac38b70..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchResetTargetQtyOnItemAggregatedMovement.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "launchResetTargetQtyOnItemAggregatedMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -movement_list = context.zGetTissuMovementWithoutItem() -cr = '\n' -tab = '\t' -movement_log = 'Problème'+cr - -for movement_item in movement_list : - movement = movement_item.getObject() - if movement is not None: - context.portal_activities.newMessage('SQLDict', movement.getPath(), None, {}, 'Movement_resetTargetQuantity') - # movement_log.append(movement.getRelativeUrl()) - -#request.RESPONSE.setHeader('Content-Type','application/text') - -return 'fait' diff --git a/product/Coramy/skins/coramy_custom/launchSetStopDateONProdDelivery.py b/product/Coramy/skins/coramy_custom/launchSetStopDateONProdDelivery.py deleted file mode 100755 index fad31d3cf47d44b8a435d0de669f6fb381f1552f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchSetStopDateONProdDelivery.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "launchSetStopDateONProdDelivery" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -packing_list = context.zGetProductionDeliveryList() -cr = '\n' -tab = '\t' - -for packing_item in packing_list : - packing = packing_item.getObject() - if packing is not None: - packing.activate().recursiveImmediateReindexObject() - -return 'lancé' diff --git a/product/Coramy/skins/coramy_custom/launchTransferVetement.py b/product/Coramy/skins/coramy_custom/launchTransferVetement.py deleted file mode 100755 index a17029609455ef89eaee3b14b2160b986f5f6703..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchTransferVetement.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "launchTransferVetement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -item_list = context.zGetVetementList() -cr = '\n' -tab = '\t' - -for item_item in item_list : - item = item_item.getObject() - if item is not None: - item.activate().transfer_vetement() - -#request.RESPONSE.setHeader('Content-Type','application/text') - -return 'lancé'+str(len(item_list)) diff --git a/product/Coramy/skins/coramy_custom/launchUpdateAssortimentPriceOnSalesOrder.py b/product/Coramy/skins/coramy_custom/launchUpdateAssortimentPriceOnSalesOrder.py deleted file mode 100755 index 11f90381248b38f4bcbb30c55b6c0d337c61c401..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchUpdateAssortimentPriceOnSalesOrder.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "launchUpdateAssortimentPriceOnSalesOrder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -item_list = context.zGetHouvSalesOrderList() -cr = '\n' -tab = '\t' - -for item_item in item_list : - item = item_item.getObject() - if item is not None: - item.activate().SalesOrder_updateAssortimentPrice() - -#request.RESPONSE.setHeader('Content-Type','application/text') - -return 'lancé'+str(len(item_list)) diff --git a/product/Coramy/skins/coramy_custom/launchUpdateQuantityOnItemAggregatedMovement.py b/product/Coramy/skins/coramy_custom/launchUpdateQuantityOnItemAggregatedMovement.py deleted file mode 100755 index 943cbe833944aac40bd7f767a0db9adc32d263cb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/launchUpdateQuantityOnItemAggregatedMovement.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "launchUpdateQuantityOnItemAggregatedMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -movement_list = context.zGetItemAggregatedMovement() -cr = '\n' -tab = '\t' -movement_log = 'Problème'+cr - -for movement_item in movement_list : - movement = movement_item.getObject() - if movement is not None: - context.portal_activities.newMessage('SQLDict', movement.getPath(), None, {}, 'updateQuantityOnItemAggregatedMovement') - # movement_log.append(movement.getRelativeUrl()) - -request.RESPONSE.setHeader('Content-Type','application/text') - -return 'fait' diff --git a/product/Coramy/skins/coramy_custom/mail_received.py b/product/Coramy/skins/coramy_custom/mail_received.py deleted file mode 100755 index b1ba645add06c9c2049bef03bf2ce54b26f0796b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/mail_received.py +++ /dev/null @@ -1,59 +0,0 @@ -## Script (Python) "mail_received" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=theMail -##title= -## -# This method gets called when a mail arrives at the portal object - -# the variable called 'theMail' contains the entire mail in a dictionary -# set out in the following format: -# -# {'attachments': {}, -# 'body': 'THis is a mailIn test from ME.\n\nHa Ha\n\n-Andy\n\n', -# 'headers': {'content-transfer-encoding': '7bit', -# 'content-type': 'text/plain;\n charset="iso-8859-1"', -# 'date': 'Tue, 13 Jun 2000 09:34:08 +0100', -# 'from': '"Andy Dawkins" <andyd@nipltd.com>', -# 'importance': 'Normal', -# 'message-id': '<NEBBLGACMKDPCFFIIEALKEDDCBAA.andyd@nipltd.com>', -# 'mime-version': '1.0', -# 'subject': 'Mail In Test', -# 'to': '<testing@legolas.private.nipltd.com>'}, -# 'localpart': 'testing'} - -# This is just an example Mail handeler method -# It is designed to give you an idea of how one should be written -# And it is used to test the MailIn tool - -# Get the members folder -mf = container.portal_url.getPortalObject().Members - -# Check if the localpart exists in the members folder -if not theMail['localpart'] in mf.objectIds(): - raise "NotFound", "Cannot find the user '%s' that the email was destined for"%theMail['localpart'] - -# get a handle on the user folder -uf = mf[theMail['localpart']] - -uf.invokeFactory(type_name='MailMessage', - id=container.strip_punctuation(theMail['headers']['message-id']), - title=theMail['headers'].get('subject'), - subject=theMail['headers'].get('subject'), - date=theMail['headers'].get('date'), - to=theMail['headers'].get('to'), - sender=theMail['headers'].get('from'), - replyto=theMail['headers'].get('replyto'), - body=theMail['body'], - headers=theMail['headers'], - otherInfo=theMail['localpart'], - attachments=theMail['attachments'] - ) - -# the return of None indicates a success -# The return of anything else assumes that you are returning an error message -# and most MTA's will bounce that error message back to the mail sender -return None diff --git a/product/Coramy/skins/coramy_custom/manage_after_clone.py b/product/Coramy/skins/coramy_custom/manage_after_clone.py deleted file mode 100755 index 13bef6ef950d9f1dacab036cbe76767a5c3f36ec..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/manage_after_clone.py +++ /dev/null @@ -1,18 +0,0 @@ -## Script (Python) "manage_after_clone" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -print " " - -o = context.getObject() - -context.manage_afterClone(o) - -print "manage_afterClone() Done" - -return printed diff --git a/product/Coramy/skins/coramy_custom/metadata_edit.form b/product/Coramy/skins/coramy_custom/metadata_edit.form deleted file mode 100755 index 9f4691476cf350cfd12f042dc16fe4d92ce03f12..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/metadata_edit.form +++ /dev/null @@ -1,302 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>metadata_edit</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_language</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Language</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_effective_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>ymd</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Effective date</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_expiration_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>ymd</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Expiration Date</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_format</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Format</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_rights</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Rights</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">8</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_contributors</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Contributors</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/pay_sheet_view.form b/product/Coramy/skins/coramy_custom/pay_sheet_view.form deleted file mode 100755 index 331446d997cdf8c77b6a92e22cfe90d9c8ecafd8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/pay_sheet_view.form +++ /dev/null @@ -1,138 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>pay_sheet_view</title> - <row_length>4</row_length> - <name>pay_sheet_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>my_description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_month</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>ymd</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>my_month</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/payroll_list.form b/product/Coramy/skins/coramy_custom/payroll_list.form deleted file mode 100755 index 69b1beb82a7e174a60d8756c0d60e16d7555a8a4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/payroll_list.form +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>payroll_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>pay_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[('getId', 'Id'), ('getTitle', 'Title')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('getId', 'Id'), ('getTitle', 'Title')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('min', '(0,1,3)'), ('max', '100')]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action></list_action> - <list_cookie>PAYROLL_COOKIE</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[('ERP5 PaySheet', 'ERP5 PaySheet')]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>payroll</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>pay_list</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/search.form b/product/Coramy/skins/coramy_custom/search.form deleted file mode 100755 index 4bdbb82810c9ca456e79156d213f9c9eb375ceac..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/search.form +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Résultats</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>search_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('portal_type', 'Portal Type'), ('Title', 'Title'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('portal_type', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>SEARCH_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name></selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Résultats</title> - <width type="int">40</width> - </values> - <tales> - <list_method>python:here.portal_url.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/search_category.zsql b/product/Coramy/skins/coramy_custom/search_category.zsql deleted file mode 100755 index 539e6e4275265c94d1995689eef9305e4999dad5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/search_category.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title:Search Category -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>category_list -portal_type</params> -<dtml-if portal_type> -SELECT DISTINCT catalog.uid, catalog.path, catalog.relative_url, portal_type -FROM catalog, category -WHERE (<dtml-in portal_type><dtml-unless sequence-start> OR </dtml-unless>catalog.portal_type='<dtml-var sequence-item>'</dtml-in>) -AND catalog.uid = category.uid -AND (<dtml-var "portal_categories.buildSQLSelector(category_list)">) -<dtml-else> -SELECT DISTINCT catalog.uid, catalog.path, portal_type -FROM catalog, category -WHERE catalog.uid = category.uid -AND (<dtml-var "portal_categories.buildSQLSelector(category_list)">) -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/search_relation.form b/product/Coramy/skins/coramy_custom/search_relation.form deleted file mode 100755 index c72d2c00c45e5b50e23295f1527ef23d3cfa5da9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/search_relation.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Mettre à jour la relation</title> - <row_length>4</row_length> - <name>Update Relation</name> - <pt>form_list_relation</pt> - <action>update_relation</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('portal_type', 'Type'), ('Title', 'Titre'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('portal_type', 'Type'), ('Title', 'Titre'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('relative_url', "''"), ('portal_type', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>SEARCH_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>search_relation</selection_name> - <sort type="list">[('relative_url', 'relative_url')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Résultats</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/seb_test.py b/product/Coramy/skins/coramy_custom/seb_test.py deleted file mode 100755 index b6d812d34cc47e6221526d8c04cd5e648203d12d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/seb_test.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "seb_test" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -organisation_list = context.object_action_list(selection_name='organisations_selection') - -request = context.REQUEST -tab = '\t' -cr = '\n' -export = '' -del_list = [] - -for modele_item in organisation_list : - ligne_modele = '' - modele=modele_item.getObject() - - if int(modele.getId()) >= 726 : - del_list.append(modele.getId()) - -context.getPortalObject().organisation.deleteContent(del_list) -return len(del_list) diff --git a/product/Coramy/skins/coramy_custom/show_request.py b/product/Coramy/skins/coramy_custom/show_request.py deleted file mode 100755 index 9bad2c459f46f5026ad19b68e22700bafe70e182..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/show_request.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "show_request" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return context.REQUEST diff --git a/product/Coramy/skins/coramy_custom/test_form.form b/product/Coramy/skins/coramy_custom/test_form.form deleted file mode 100755 index 415de8e30fafdcdca1befa7420b5f4ceadd301bf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_form.form +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title></title> - <name>test_form</name> - <action></action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>xxx</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>xxx</title> - <width type="int">40</width> - </values> - <tales> - <default>request/toto</default> - <description>request/toto</description> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/test_jps.py b/product/Coramy/skins/coramy_custom/test_jps.py deleted file mode 100755 index 21c2334f5efaca66c304ccc6b850a3870b3db582..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_jps.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "test_jps" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Collect movements in Zero Stock applied rule -zs_movement_list = [context.portal_simulation.zero_stock['modele-137H401_coloris-modele-137H401-1_taille-adulte-52']] - -# keep only movements with a Modele resource -movement_list = [] -for movement in zs_movement_list : - try : - if movement.getResourceValue().getPortalType() == 'Modele' : - movement_list.append(movement) - except : - pass - -# Parse movements into a root group -root_group = context.portal_simulation.collectMovement(movement_list) -order_list = context.portal_simulation.buildOrderList(root_group) - -# update produced orders -for order in order_list: - order.autoPlan() - order.purchase_order_apply_condition() - -return "fait" diff --git a/product/Coramy/skins/coramy_custom/test_link.py b/product/Coramy/skins/coramy_custom/test_link.py deleted file mode 100755 index c3997a40d798323a81e0014db29f23b55eb6f94d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_link.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "test_link" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST - -transformation_list = context.transformation_sql_search(modele_id = context.id) - -if len(transformation_list) > 0: - jump_url = transformation_list[0].absolute_url() -else: - jump_url = context.absolute_url() - -return request[ 'RESPONSE' ].redirect( '%s/view' % jump_url ) diff --git a/product/Coramy/skins/coramy_custom/test_piece.zsql b/product/Coramy/skins/coramy_custom/test_piece.zsql deleted file mode 100755 index cdb26e7abaf1850e43f918f58b4d66c5c69a2f76..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_piece.zsql +++ /dev/null @@ -1,28 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT DISTINCT - item.uid, item.id, item.path, - item.Description, item.simulation_state, item.default_destination_title, - stock.uid as stock_uid, - stock.node_uid as stock_node_uid, - stock.quantity as stock_quantity - -FROM - catalog AS item - -LEFT JOIN category, stock -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND stock.uid = category.uid) - -WHERE item.portal_type = "Piece Tissu" - -AND item.uid=1987190823 \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/test_script.py b/product/Coramy/skins/coramy_custom/test_script.py deleted file mode 100755 index 12eacc7e935cccaa6353538f77fd2eb3706d8b62..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_script.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "test_script" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -rule = context.getSpecialiseValue() -if rule is not None: - rule.expand(context, force=1) diff --git a/product/Coramy/skins/coramy_custom/test_script2.py b/product/Coramy/skins/coramy_custom/test_script2.py deleted file mode 100755 index 954a3dd2e95a80fbadf60a5c03b5b3a5c82792ce..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/test_script2.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "test_script2" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -object_list = context.object_action_list(selection_name='purchase_packing_list_selection') - -for object in object_list : - object.deliver() - object.invoice() - -return 'fait', len(object_list) diff --git a/product/Coramy/skins/coramy_custom/testdocument_pdf.pt b/product/Coramy/skins/coramy_custom/testdocument_pdf.pt deleted file mode 100755 index 14cc630c25e7aa6ecfd534086961a654198ca688..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/testdocument_pdf.pt +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<document filename="report01.pdf"> - <title tal:content="template/title">Test Document</title> - <author>Ulrich Eck</author> - <subject>only for testing ...</subject> - <content tal:define="price python:65.0; count python:10"> - - - - <para>this is some paragraph text followed by an flowing image</para> - <para>this is some paragraph text followed by an flowing image</para> - <spacer height="30" /> - <table rowheight="0.7cm" colwidth="2cm" splitbyrow="1" repeatrows="1" repeatcols="0" style="StandardTable"> - <tr> - <td colwidth="2cm">Amount</td><td colwidth="11cm">Description</td><td colwidth="3cm">Price</td> - </tr> - <tal:block tal:repeat="item python:range(count)"> - <tr> - <td tal:content="item"/> - <td>Some Description</td> - <td tal:content="string:${price},- EUR"/> - </tr> - </tal:block> - <tr tal:define="sum python:count*price"> - <td> </td> - <td>Total</td> - <td tal:content="string:${sum},- EUR"/> - </tr> - </table> - </content> -</document> diff --git a/product/Coramy/skins/coramy_custom/testjp.py b/product/Coramy/skins/coramy_custom/testjp.py deleted file mode 100755 index 6a5165607e43dba90fafc1de9cf02d7c4d9ddf24..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/testjp.py +++ /dev/null @@ -1,418 +0,0 @@ -## Script (Python) "testjp" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -context.SimulationTool_buildRequirementOrder( - resource="composant/B4002", - node_category="site/Stock_MP", - section_category="group/Coramy" - ) - -return "Done" - - -# - -if len(context.getCausalityRelatedValueList()) == 1: - # Only applied rule - context.activate().buildDeliveryList() -else: - return "causality is not 1" - -return "Done" - -# - -context.SimulationTool_buildRequirementOrder(resource='composant/VIDJL') -return None - -# -context.buildDeliveryList() -return "Done" - -## - -movement_list = [] -order = context - -if order.getPortalType() == 'Purchase Order' : - filter_dict = {'portal_type': 'Purchase Order Line'} -else : - filter_dict = {'portal_type': 'Sales Order Line'} - -movement_list += order.getOrderRelatedValueList(portal_type = 'Simulation Movement') -for order_line in order.contentValues(filter=filter_dict) : - movement_list += order_line.getOrderRelatedValueList(portal_type = 'Simulation Movement') - for cell in order_line.contentValues(filter={'portal_type': 'Delivery Cell'}) : - movement_list += cell.getOrderRelatedValueList(portal_type = 'Simulation Movement') - -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list = context.portal_simulation.buildDeliveryList(root_group) - -# what's the gestionaire of this order -user_name = '' -# are we on a sales order or puchase order ? -if order.getPortalType() == 'Sales Order' : - user_name = order.getSourceAdministrationTitle().replace(' ','_') -elif order.getPortalType() == 'Purchase Order' : - user_name = order.getDestinationAdministrationPersonTitle().replace(' ','_') - -for delivery in delivery_list : - # update the state of the created deliveries to 'confirmed' - delivery.confirm() - # update local_roles - delivery.assign_gestionaire_designe_roles(user_name = user_name) - -return str(delivery_list) - - -# - -context.buildDeliveryList() -return None - -# - -for l in context.objectValues(): - print l.getRelativeUrl(), l.getInventoriatedQuantity() - for c in l.objectValues(): - print c.getRelativeUrl(), c.getInventoriatedQuantity() - -return printed - - -# -context.buildInvoiceList() -return "Done" - -# - -return str(context.getConvertedQuantity() is not None) - -# - -for l in context.objectValues(): - l.immediateReindexObject() - for c in l.objectValues(): - try: - c.immediateReindexObject() - except: - print c.getRelativeUrl() - -return printed - -#- - -return str(context.getCausalityValueList()) - -#- - -context.expand(applied_rule_id = '2308') -return "Done" - -#- - -for l in context.objectValues(): - if l.isDivergent(): - print "Divergent", l.getRelativeUrl(), str(l.getDeliveryRelatedValueList()) - for c in l.objectValues(): - if not c.isSimulated(): - print "Not simulated", c.getRelativeUrl(), str(c.getDeliveryRelatedValueList()) - elif c.isDivergent(): - print "Divergent", c.getRelativeUrl(), str(c.getDeliveryRelatedValueList()) - - -print 'OK' -return printed - -#- - -context.updateAppliedRule() -return "Done" - -#¬ -return context.portal_simulation.updateAssetPrice( - 'assortiment/751H402_12P_H', '', - "group/Coramy", - "site/Stock_PF" - ) - -return context.portal_simulation.updateAssetPrice( - 'composant/AN014', 'variante/composant/AN014/bronze blanc', - "group/Coramy", - "site/Stock_MP" - ) - -return context.portal_simulation.updateAssetPrice( - 'modele/067E402', 'coloris/modele/067E402/0_noir_blanc\nmorphologie/modele/067E402/C\ntaille/adulte/48', - "group/Coramy", - "site/Stock_PF" - ) - - - - -#- - -context.buildInvoiceList() -return "Done" - - - - -t = context.getDefaultCausalityValue() -return t.getId() - - -#- - -return str(context.getAggregatedAmountList( - categories = "taille/adulte/40\ncoloris/modele/058B406/2")) -#-- - -print context.getQLineItemList() -print context.getQColumnItemList() -print context.getQTabItemList() -print context.getVLineItemList() -print context.getVColumnItemList() -print context.getVTabItemList() - -return printed - -#-- - -return context.buildInvoiceList() - -#- - -return str(hasattr(context, 'inventory')) - -#-- - - -return str(context.getInventory()) - -#-- - -resource_list = context.PortalSimulation_zGetResourceList() -context.portal_simulation.commitTransaction() - -commit = 100 -for b in resource_list : - relative_url = b.resource_relative_url - variation_text = b.variation_text - if relative_url is not None: - if relative_url.find('modele') >= 0: - if variation_text not in (None, ''): - #print "##Calculate price for %s %s" % (b.resource_relative_url, b.variation_text) - context.portal_simulation.activate(activity='SQLQueue', priority=3).updateAssetPrice( - relative_url, variation_text, - "group/Coramy", - "site/Stock_PF" - ) - else: - print "###Error variation for modele" % variation_text - commit = commit -1 - if commit == 0: - context.portal_simulation.commitTransaction() - commit = 100 - -return printed - -## - -result = context.portal_simulation.updateAssetPrice( - "tissu/TI012", - """coloris/tissu/TI012/Serenity 6025""", - "group/Coramy", - "site/Stock_MP" - ) - -for i in result: - print ' '.join(map(lambda x:str(x), i)) - -return printed - - -#-- - -result = context.portal_simulation.updateAssetPrice( - "modele/417P401", - """coloris/modele/417P401/1_espace_stuc -taille/enfant/10 ans""", - "group/Coramy", - "site/Stock_PF" - - ) - -for i in result: - print ' '.join(map(lambda x:str(x), i)) - -return printed - -#- - -context.restrictedTraverse("modele/537C419GLC/3").updateRelatedContent('modele/537C419GLC/2','modele/537C419GLC/3') -return 'Done' - -#- - -olist = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.ordre_fabrication.getUid(),context.commande_achat.getUid()]) -return map(lambda x:x.path, olist) - -#- - -return str(context.contentValues()) - -modele_prix = context.restrictedTraverse('modele/417P401/pri_0_0') -modele = context.restrictedTraverse('modele/417P401') - -return str(modele.getIndustrialPrice(context=context)) -return str(modele_prix.test(context.asContext())) - -#-- - -return str(context.isMemberOf('site/Piquage')) - -context.restrictedTraverse('portal_simulation/3078/2').setDelivery('livraison_vente/364/1') -context.restrictedTraverse('portal_simulation/3083/2').setDelivery('livraison_vente/366/1') - -return "Done" - - -#- - - -return context.buildDeliveryList() -#return context.getMovementList() -#return context.updateAppliedRule() - - -return len(context.Resource_zGetMovementHistoryList(resource=("modele/417P401",), - variation_text="""coloris/modele/417P401/1_espace_stuc -taille/enfant/10 ans""", - strict_membership=0, - section_category="group/Coramy", - node_category="site/Stock_PF", - simulation_state=('delivered', 'started', 'stopped', 'invoiced'))) -#-------------------- - -for m in context.getMovementList(): - if not m.isSimulated(): - print "Not simumlated: %s" % m.getRelativeUrl() - -return printed - -#-------------------- - -dest = context.getDestinationValue(portal_type=['Organisation']).getTitle() -return dest - - -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return movement_uid_list -return map(lambda x: (x.path, x.quantity, x.target_quantity),list(context.ProductionOrder_getAggregatedMaterialConsumptionList())) - -return context.updateAppliedRule() - -return '/'.join(context.getPhysicalPath()) - -# Use this script to test if simulation state is acceptable - -def hasDelivery(ps_item): - for m in ps_item.objectValues(): - if len(m.getCategoryMembershipList('delivery')) > 0: - return 1 - for a in m.objectValues(): - if hasDelivery(a): - return 1 - return 0 - -def getDeliveryList(ps_item): - result = {} - for m in ps_item.objectValues(): - for d in m.getDeliveryValueList(): - if d is not None: - result[d.getRelativeUrl()] = 1 - for a in m.objectValues(): - result.update( getDeliveryList(a)) - return result - -# ---------------------------------------------------------- -# First make sure all simulation movements point to an order - -print "-- Checking simulation" -for ar in context.portal_simulation.objectValues(): - if ar.getCausalityValue() is None: - print " Applied Rule %s has no order" % ar.getId() - print " Previously was: %s" % ar.getCausality() - if hasDelivery(ar): - print " Applied Rule %s has some delivered movements" % ar.getId() - print " deliveries: %s" % ' '.join(getDeliveryList(ar).keys()) - elif ar.getId() not in ('zero_stock', ): - print " Delete %s" % ar.getId() - context.portal_simulation.deleteContent(ar.getId()) - -# ---------------------------------------------------------- -# Next make sure all orders in > planned state have at most one applied rule - -order_list = context.ordre_fabrication.objectValues() + context.commande_achat.objectValues() + context.commande_vente.objectValues() - -for of in order_list: - if of.getSimulationState() not in ('draft', 'cancelled', 'auto_planned'): - ps = of.getCausalityRelatedValueList(portal_type="Applied Rule") - if len(ps) == 0: - print " Missing PS for Order %s of type %s" % (of.getId(), of.getPortalType()) - print " Reexpand order %s" % of.getId() - of.edit() - elif len(ps) > 1: - print " Too many PS for Order %s of type %s" % (of.getId(), of.getPortalType()) - no_delivery = [] - delivery = [] - for ps_item in ps: - if hasDelivery(ps_item): - print " PS %s has some delivered movements" % ps_item.getId() - delivery.append(ps_item) - else: - print " PS %s has no delivered movements" % ps_item.getId() - no_delivery.append(ps_item) - # manage_delObjects - if len(delivery) > 0: - # Only erase no_delivery if one item has delivery - for ps_item in no_delivery: - print " Delete PS %s" % ps_item.getId() - parent = ps_item.aq_parent - parent.deleteContent(ps_item.getId()) - else: - # Keep at least one - for ps_item in no_delivery[1:]: - print " Delete PS %s" % ps_item.getId() - id = ps_item.getId() - parent = ps_item.aq_parent - parent.deleteContent(ps_item.getId()) - if len(delivery) > 1: - # We erase the Applied Rule but keep - # some excessive packing lists which may have been generated - # THIS BREAKS CONSISTENCY - for ps_item in delivery[1:]: - print " Delete PS %s with BREAKS CONSISTENCY" % ps_item.getId() - id = ps_item.getId() - parent = ps_item.aq_parent - parent.deleteContent(ps_item.getId()) - - -# ---------------------------------------------------------- -# Next make sure all movements in a delivery of material point to simulation - - -# ---------------------------------------------------------- -# Next make sure all movements in a delivery of material point to simulation - - -return printed diff --git a/product/Coramy/skins/coramy_custom/testrc.py b/product/Coramy/skins/coramy_custom/testrc.py deleted file mode 100755 index f487c5f631e2c01c68b05a6e09edcce7f0b6bb53..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/testrc.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "testrc" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -context.setSourceAdministration('person/347') -return 'Done' - - -# set the source administration -local_user = context.portal_membership.getAuthenticatedMember() -local_user_name = string.replace(local_user.getUserName(), '_', ' ') -local_persons = context.item_by_title_sql_search(title = local_user_name, portal_type = 'Person') -if len(local_persons) > 0: - print local_user.getUserName() - print local_persons[0].relative_url -else: - print 'couscous' -return printed - - -# -context.activate().buildDeliveryList() -return "Done" - - -""" -summary = context.getAggregatedAmountList() -#amount = summary[0] -#print amount['converted_quantity'], amount['efficiency'] -print 'fin' -return printed -""" -""" -print float(context.getLaizeUtile()) -return printed -""" diff --git a/product/Coramy/skins/coramy_custom/testseb.py b/product/Coramy/skins/coramy_custom/testseb.py deleted file mode 100755 index 48d2632639e83503b492f321d5256aa60abf2c3b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/testseb.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "testseb" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_list =context.object_action_list(selection_name='sales_packing_list_selection',max_nb=10) -return repr(delivery_list) diff --git a/product/Coramy/skins/coramy_custom/testyo.py b/product/Coramy/skins/coramy_custom/testyo.py deleted file mode 100755 index c139258abdf568edd311216f7a804dbd1f827d19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/testyo.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "testyo" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -movement_list = context.getMovementList() -movement_group = context.collectMovement(movement_list) - -invoice_line_list = context.buildInvoiceLineList(movement_group) -return repr(invoice_line_list) - -dict = context.showDict() -item_list = dict.items() -item_list.sort() -s = '' -for key,val in item_list: - s += "%s: %s\n" % (str(key), str(val)) -return s - -ret = [] - -invoice_line_list = context.contentValues(filter={'portal_type':'Invoice Line'}) -for invoice_line in invoice_line_list: - cell_range = invoice_line.getCellRange(base_id='movement') - ret.append(cell_range) - -return repr(ret) diff --git a/product/Coramy/skins/coramy_custom/toto_test.py b/product/Coramy/skins/coramy_custom/toto_test.py deleted file mode 100755 index 4caa51976a18845cbd5597fc0f0851c62805cde7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/toto_test.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "toto_test" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -print context.variated_reference_matrix_item_list(base_category_list = ('coloris',), base=0) -print context.variated_reference_matrix_item_list(base_category_list = ('taille',), base=0) -print context.variated_reference_matrix_item_list(base_category_list = ('taille','coloris',), base=0, include=0) - - -print " " -return printed diff --git a/product/Coramy/skins/coramy_custom/transfer_vetement.py b/product/Coramy/skins/coramy_custom/transfer_vetement.py deleted file mode 100755 index c158300de5f681453c1e0339a8ebca22a82bf9ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/transfer_vetement.py +++ /dev/null @@ -1,61 +0,0 @@ -## Script (Python) "transfer_vetement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -vetement = context -vetement_relative_url = vetement.getRelativeUrl() - -related_object_list = vetement.getSpecialiseRelatedValueList() - -forme = vetement.aq_parent - -vetement_module = context.getPortalObject().vetement - -# copy and paste vetement -copy_data = forme.manage_copyObjects(ids=[vetement.getId()]) -new_id_list = vetement_module.manage_pasteObjects(copy_data) -new_vetement = vetement_module[new_id_list[0]['new_id']] - -# forme_id_list is used to build the specialise relation between the vetement and formes -forme_id_list = [] -forme_id_list.append(forme.getId()) - -# update relation on each related_object and complete forme_id_list -for related_object in related_object_list : - category_items = related_object.getCategoryList() - filtered_items = filter(lambda cat_item:cat_item.find(vetement_relative_url) == (-1) , category_items) -# print related_object.getId() -# print len(category_items) -# print len(filtered_items) - # update categories on related_object - filtered_items.append("specialise/vetement/"+vetement.getId()) - related_object.edit(categories = filtered_items) - - if related_object.getPortalType() == "Modele" : - modele_forme_list = related_object.getFormeIdList() - for forme_id in modele_forme_list : - if forme_id in forme_id_list : - pass - else : - forme_id_list.append(forme_id) - -#print forme_id_list -# set forme_id_list on vetement -vetement_categories = new_vetement.getCategoryList() -for forme_id in forme_id_list : - vetement_categories += ('specialise/forme/'+forme_id,) - -# update fichier Lectra -fichierLectra = new_vetement.getLibrairie()+'/'+new_vetement.getId() - -new_vetement.edit(categories = vetement_categories, librairie = fichierLectra) - -# delete old vetement -forme.deleteContent(vetement.getId()) - -#return printed diff --git a/product/Coramy/skins/coramy_custom/updateEipAndCollection.py b/product/Coramy/skins/coramy_custom/updateEipAndCollection.py deleted file mode 100755 index 757f0a7d31dace74d831497a55d77cb249637547..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/updateEipAndCollection.py +++ /dev/null @@ -1,59 +0,0 @@ -## Script (Python) "updateEipAndCollection" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# callable on tissu, modele, forme, gamme - -categorie_dict = {} -categorie_dict['eip/Baby']=['eip/Baby'] -categorie_dict['eip/Baby/Fille']=['eip/Baby/Fille'] -categorie_dict['eip/Baby/Garcon']=['eip/Baby/Garcon'] -categorie_dict['eip/Femme']=['eip/Femme'] -categorie_dict['eip/Femme/Chic elegante']=['eip/Femme'] -categorie_dict['eip/Femme/Classic']=['eip/Femme'] -categorie_dict['eip/Femme/Confort']=['eip/Femme'] -categorie_dict['eip/Femme/Cote azur']=['eip/Femme'] -categorie_dict['eip/Femme/Maternite']=['eip/Femme'] -categorie_dict['eip/Femme/Piscine']=['eip/Femme'] -categorie_dict['eip/Femme/Rebelle attitude']=['eip/Femme'] -categorie_dict['eip/Femme/Separables']=['eip/Femme'] -categorie_dict['eip/Femme/Sportswear']=['eip/Femme'] -categorie_dict['eip/Femme/Surf']=['eip/Femme'] -categorie_dict['eip/Fille']=['eip/Fille'] -categorie_dict['eip/Fille/Basic line']=['eip/Fille'] -categorie_dict['eip/Fille/Junior']=['eip/Fille'] -categorie_dict['eip/Fille/Nautic']=['eip/Fille'] -categorie_dict['eip/Fille/Piscine']=['eip/Fille'] -categorie_dict['eip/Fille/Pretty girl']=['eip/Fille'] -categorie_dict['eip/Fille/Rayures']=['eip/Fille'] -categorie_dict['eip/Fille/Surf']=['eip/Fille'] -categorie_dict['eip/Garcon']=['eip/Garcon'] -categorie_dict['eip/Garcon/Fantaisie']=['eip/Garcon'] -categorie_dict['eip/Garcon/Junior']=['eip/Garcon'] -categorie_dict['eip/Garcon/Piscine']=['eip/Garcon'] -categorie_dict['eip/Garcon/Surf']=['eip/Garcon'] -categorie_dict['eip/Homme']=['eip/Homme'] -categorie_dict['eip/Homme/Basic']=['eip/Homme'] -categorie_dict['eip/Homme/Classic']=['eip/Homme'] -categorie_dict['eip/Homme/Piscine']=['eip/Homme'] -categorie_dict['eip/Homme/Surf']=['eip/Homme'] -categorie_dict['eip/Homme/Techno']=['eip/Homme'] - -old_category_list = context.getCategoryList() -new_category_list = [] -categorie_keys = categorie_dict.keys() -for item in old_category_list : - if item in categorie_keys : - for cat_item in categorie_dict[item] : - if not cat_item in new_category_list : - new_category_list.append(cat_item) - else : - if not item in new_category_list and item.find('modele_origine') == -1: - new_category_list.append(item) - -context.setCategoryList(new_category_list) diff --git a/product/Coramy/skins/coramy_custom/updateItemAggregatedMovement.py b/product/Coramy/skins/coramy_custom/updateItemAggregatedMovement.py deleted file mode 100755 index 6188d36e64a415a5e468e5a0b9b28e414097850e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/updateItemAggregatedMovement.py +++ /dev/null @@ -1,59 +0,0 @@ -## Script (Python) "updateItemAggregatedMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -movement_list = context.zGetItemAggregatedMovement() -cr = '\n' -tab = '\t' -movement_log = 'Problème'+cr - -for movement_item in movement_list : - movement = movement_item.getObject() - item_list = movement.getAggregateValueList() - if not item_list in ([], None) : - quantity = 0 - for item in item_list : - # verify if resource of item == resource of movement - if movement.getResource() == item.getResource() : - # check if variation_category is the same - if movement.getVariationCategoryList() != item.getVariationCategoryList() : - movement_log += movement.getRelativeUrl()+tab - movement_log += str(movement.getVariationCategoryList())+tab - movement_log += item.getRelativeUrl()+tab - movement_log += str(item.getVariationCategoryList())+tab+cr - else : - movement_log += movement.getRelativeUrl()+tab - movement_log += str(movement.getVariationCategoryList())+tab - movement_log += item.getRelativeUrl()+tab - movement_log += str(item.getVariationCategoryList())+tab+cr - - # verify if quantity of movement == sum (item.getRemainingQuantity) - quantity += item.getRemainingQuantity() - - if 1 : # movement_MP - if (movement.getConsumptionQuantity()+movement.getProductionQuantity()) != 0 : # : - ratio = round(quantity/(movement.getConsumptionQuantity()+movement.getProductionQuantity()),0) - else : - ratio = 0 - else : # livraison_fab - if movement.getTargetQuantity() !=0 : - ratio = round(quantity/movement.getTargetQuantity(),0) - else : - ratio = 0 - - if ratio != 1: - movement_log += movement.getRelativeUrl()+tab - movement_log += str(movement.getVariationCategoryList())+tab - #movement_log += str(movement.getTargetQuantity())+tab - movement_log += str(movement.getConsumptionQuantity()+movement.getProductionQuantity())+tab - movement_log += str(round(quantity,4))+tab+str(ratio)+cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return movement_log diff --git a/product/Coramy/skins/coramy_custom/updateQuantityOnItemAggregatedMovement.py b/product/Coramy/skins/coramy_custom/updateQuantityOnItemAggregatedMovement.py deleted file mode 100755 index 7827939e47f5f1352db4f810fe6635ea12bef54a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/updateQuantityOnItemAggregatedMovement.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "updateQuantityOnItemAggregatedMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -movement = context - -# initial_qty = movement.getTargetQuantity() - -if movement.getPortalType() in ('Inventory Cell', 'Inventory Line') : - #if movement.getProductionQuantity() != 0.0 : - # movement.setProducedItemIdList(movement.getProducedItemIdList()) - #elif movement.getConsumptionQuantity() != 0.0 : - # movement.setConsumedItemIdList(movement.getConsumedItemIdList()) - #else : # inventory - movement.setItemIdList(movement.getItemIdList()) -else : # Delivery Line or Cell - movement.setItemIdList(movement.getItemIdList()) - -# final_qty = movement.getTargetQuantity() - -# return str(initial_qty-final_qty) diff --git a/product/Coramy/skins/coramy_custom/update_this_one.py b/product/Coramy/skins/coramy_custom/update_this_one.py deleted file mode 100755 index 0499d90500ce0152f6db59544f0441872f3169ab..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/update_this_one.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "update_this_one" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -for o in context.objectValues("CORAMY Transformation"): - print o.id - for t in o.objectValues("CORAMY Transformed Resource"): - print t.id - for c in t.objectValues("ERP5 Set Mapped Value"): - if c.id[0:8] == 'quantity': - atr_list = c.getMappedValueAttributeList() - if len(atr_list) == 0: - c.setMappedValueAttributeList(['quantity']) - print c.getRelativeUrl() - if c.id[0:9] == 'variation': - var_bc = c.getMappedValueBaseCategoryList() - if len(var_bc) == 0: - print c.getRelativeUrl() - c.setMappedValueBaseCategoryList(t.getResourceDefaultValue().getVariationBaseCategoryList()) - -return printed diff --git a/product/Coramy/skins/coramy_custom/zGetConfirmedOrderWithoutDeliveries.zsql b/product/Coramy/skins/coramy_custom/zGetConfirmedOrderWithoutDeliveries.zsql deleted file mode 100755 index a055c0e7e537af64de25fb236ea4f415730f2d87..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetConfirmedOrderWithoutDeliveries.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.relative_url, catalog.id, catalog.path -FROM catalog, catalog AS delivery -LEFT JOIN category ON (catalog.uid=category.category_uid -AND category.base_category_uid = <dtml-var "portal_categories.causality.uid"> -AND category.uid = delivery.uid ) -WHERE ( catalog.portal_type = "Sales Order" -OR catalog.portal_type = "Purchase Order" -OR catalog.portal_type = "Production Order" ) -AND ( delivery.portal_type = "Sales Packing List" -OR delivery.portal_type = "Purchase Packing List" -OR delivery.portal_type = "Production Packing List" ) -AND catalog.simulation_state = "confirmed" -AND category.uid IS NULL \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetEipChangeObjectlist.zsql b/product/Coramy/skins/coramy_custom/zGetEipChangeObjectlist.zsql deleted file mode 100755 index 46530481ddf195cb1879b58c5f40f15f987a14b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetEipChangeObjectlist.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT catalog.id, catalog.relative_url, catalog.path, category.uid -FROM catalog -LEFT JOIN category ON ( catalog.uid=category.uid -AND category.base_category_uid = <dtml-var "portal_categories.collection.uid"> -AND category.category_uid = <dtml-var "portal_categories.collection['2004'].Coramy.uid"> -) - -WHERE not (category.uid is NULL) -AND (catalog.portal_type = "Modele" -OR catalog.portal_type = "Forme" -OR catalog.portal_type = "Tissu" -OR catalog.portal_type = "Gamme" ) -AND catalog.uid = -1893100782 \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetHouvSalesOrderList.zsql b/product/Coramy/skins/coramy_custom/zGetHouvSalesOrderList.zsql deleted file mode 100755 index 5aea7cead87826930664af9b505ed87f32f06539..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetHouvSalesOrderList.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT catalog.id, catalog.relative_url, catalog.path -FROM catalog, category -WHERE catalog.uid=category.uid -AND category.base_category_uid = <dtml-var "portal_categories.source_section.uid"> -AND category.category_uid = <dtml-var "portal_categories.group.Coramy.Houvenaegel.uid"> -AND ( catalog.portal_type = "Sales Order" -OR catalog.portal_type = "Sales Packing List") diff --git a/product/Coramy/skins/coramy_custom/zGetInSubPieceTissuList.zsql b/product/Coramy/skins/coramy_custom/zGetInSubPieceTissuList.zsql deleted file mode 100755 index 3218fa7e589d719b34ca7cba25671452d96d59a2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetInSubPieceTissuList.zsql +++ /dev/null @@ -1,20 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.relative_url, catalog.path -FROM catalog, catalog as master_item, category, stock -WHERE category.uid=stock.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.uid"> -AND category.category_uid = catalog.uid -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.uid"> -AND stock.quantity > 0 -AND catalog.parent_uid = master_item.uid -AND master_item.portal_type = "Piece Tissu" -AND catalog.portal_type = "Piece Tissu" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetItemAggregatedMovement.zsql b/product/Coramy/skins/coramy_custom/zGetItemAggregatedMovement.zsql deleted file mode 100755 index 4f783afb260e831a4eab77a55f0bd0bc564c9940..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetItemAggregatedMovement.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.id, catalog.relative_url, catalog.path -FROM catalog, catalog as tissu, catalog as delivery, category, movement -WHERE catalog.uid=category.uid -AND tissu.uid = category.category_uid -AND tissu.portal_type = "Piece Tissu" -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.uid"> -AND movement.uid = catalog.uid -AND delivery.uid = movement.delivery_uid -AND ( delivery.portal_type = "xProduction Packing List" -OR delivery.portal_type = "xPurchase Packing List" -OR delivery.portal_type = "Inventory MP" -OR delivery.portal_type = "xMovement MP" ) -AND delivery.relative_url like "inventaire_mp/10%" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetLocatedPieceTissuList.zsql b/product/Coramy/skins/coramy_custom/zGetLocatedPieceTissuList.zsql deleted file mode 100755 index 6e89eacd29e003970c88e00e7d4026981d59532f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetLocatedPieceTissuList.zsql +++ /dev/null @@ -1,24 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT catalog.relative_url, catalog.path, catalog.id, resource.relative_url as resource, variation.relative_url as variation -FROM catalog - -LEFT JOIN category ON (category.uid = catalog.uid -AND category.base_category_uid = <dtml-var "portal_categories.resource.uid">) -LEFT JOIN category as cat2 ON (cat2.uid = catalog.uid -AND cat2.base_category_uid = <dtml-var "portal_categories.coloris.uid">) -LEFT JOIN catalog as resource ON (resource.uid = category.category_uid) -LEFT JOIN catalog as variation ON (variation.uid = cat2.category_uid) -WHERE catalog.portal_type = "Piece Tissu" -AND catalog.location <> '' -AND catalog.location <> 'None' - -AND not (category.uid is NULL OR cat2.uid is NULL) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetPieceTissuList.zsql b/product/Coramy/skins/coramy_custom/zGetPieceTissuList.zsql deleted file mode 100755 index f95b603030e099964132b460be117a8c6302b836..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetPieceTissuList.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.relative_url, catalog.path -FROM catalog, catalog as resource, category -WHERE catalog.portal_type = "Piece Tissu" -AND category.uid=catalog.uid -AND category.base_category_uid = <dtml-var "portal_categories.coloris.uid"> -AND category.category_uid = resource.uid -AND resource.relative_url = "tissu/TM002/blanc" -order by catalog.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetProductionDeliveryList.zsql b/product/Coramy/skins/coramy_custom/zGetProductionDeliveryList.zsql deleted file mode 100755 index 9c9f4f225bdbed28dbae6121d6ec0763fc037daa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetProductionDeliveryList.zsql +++ /dev/null @@ -1,16 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT catalog.relative_url, catalog.path -FROM catalog -WHERE catalog.portal_type = "Production Packing List" -AND ( catalog.simulation_state = "started" -OR catalog.simulation_state = "stopped" -OR catalog.simulation_state = "delivered" ) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetStockCoramy.zsql b/product/Coramy/skins/coramy_custom/zGetStockCoramy.zsql deleted file mode 100755 index b5524148978d7193fc92689b788037fc5c554643..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetStockCoramy.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - catalog.relative_url , - movement.variation_text , - SUM( stock.quantity ) AS inventory, - SUM( stock.total_asset_price) AS asset_price -FROM - stock -LEFT JOIN catalog ON ( catalog.uid = stock.resource_uid ) -LEFT JOIN movement ON ( stock.uid = movement.uid ) -WHERE - -GROUP BY - stock.resource_uid , movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetTissuMovementWithoutItem.zsql b/product/Coramy/skins/coramy_custom/zGetTissuMovementWithoutItem.zsql deleted file mode 100755 index 8fc9261dce17e6ce8101e4b4fbccb5693bc6a950..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetTissuMovementWithoutItem.zsql +++ /dev/null @@ -1,27 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.relative_url, catalog.path -FROM catalog, catalog as resource, catalog as delivery, movement -LEFT JOIN category -ON (category.uid=movement.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.uid">) -WHERE movement.uid = catalog.uid -AND movement.target_quantity <> 0 -AND category.uid IS NULL -AND movement.is_accountable = 1 -AND resource.uid = movement.resource_uid -AND resource.portal_type = "Tissu" -AND delivery.uid = movement.delivery_uid -AND (delivery.simulation_state = "getting_ready" -OR delivery.simulation_state = "started" -OR delivery.simulation_state = "delivered") -AND ( delivery.portal_type = "Production Packing List" -OR delivery.portal_type = "Movement MP" ) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_custom/zGetVetementList.zsql b/product/Coramy/skins/coramy_custom/zGetVetementList.zsql deleted file mode 100755 index 06ba0dfdc4b04107c6b19d8fe0fc2d9d1439a8fc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_custom/zGetVetementList.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT catalog.relative_url, catalog.path -FROM catalog -WHERE catalog.portal_type = "Vetement" -AND catalog.relative_url like "forme/%" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/ActiveProcess_view.form b/product/Coramy/skins/coramy_erp5/ActiveProcess_view.form deleted file mode 100755 index 10ce904f47285cf356ee873c50e594b7f31da83b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/ActiveProcess_view.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Active Process Results</title> - <name>ActiveProcess_view</name> - <action></action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_error_list_text</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">25</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Errors</title> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/ActivityTool_postError.py b/product/Coramy/skins/coramy_erp5/ActivityTool_postError.py deleted file mode 100755 index b75c1d3d851018b36cac13559b26c52c7ca48cd3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/ActivityTool_postError.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "ActivityTool_postError" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=error -##title= -## -context.portal_activities.setTitle(context.portal_activities.title + '\p' + error) diff --git a/product/Coramy/skins/coramy_erp5/AppliedRule_cleanOrphanedOrder.py b/product/Coramy/skins/coramy_erp5/AppliedRule_cleanOrphanedOrder.py deleted file mode 100755 index ffd276bbadadb9180cd534c3d62d1982918d8198..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/AppliedRule_cleanOrphanedOrder.py +++ /dev/null @@ -1,49 +0,0 @@ -## Script (Python) "AppliedRule_cleanOrphanedOrder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Use this script to test if simulation state is acceptable - -def hasDelivery(ps_item): - for m in ps_item.objectValues(): - if len(m.getCategoryMembershipList('delivery')) > 0: - return 1 - for a in m.objectValues(): - if hasDelivery(a): - return 1 - return 0 - -def getDeliveryList(ps_item): - result = {} - for m in ps_item.objectValues(): - for d in m.getDeliveryValueList(): - if d is not None: - result[d.getRelativeUrl()] = 1 - for a in m.objectValues(): - result.update( getDeliveryList(a)) - return result - -# ---------------------------------------------------------- -# First make sure all simulation movements point to an order - -ar = context -r = ar.getSpecialiseValue() -if r is not None: - if r.getPortalType() == "Order Rule": - if ar.getCausalityValue() is None: - # Additional test need to check this is an order rule - print " Applied Rule %s has no order" % ar.getId() - print " Previously was: %s" % ar.getCausality() - if hasDelivery(ar): - print " Applied Rule %s has some delivered movements" % ar.getId() - print " deliveries: %s" % ' '.join(getDeliveryList(ar).keys()) - elif ar.getId() not in ('zero_stock', ): - print " Delete %s" % ar.getId() - context.portal_simulation.deleteContent(ar.getId()) - -return printed diff --git a/product/Coramy/skins/coramy_erp5/AssignLocalRole.py b/product/Coramy/skins/coramy_erp5/AssignLocalRole.py deleted file mode 100755 index 6daef41f0016d3c560733b4090bbe8746d3cffac..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/AssignLocalRole.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "AssignLocalRole" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_list=[], role_list=[] -##title=Assign Local Role -## -# Assign to each user in the user_list all -# roles inside role_list. By the same time, -# we ensure that nobody else have one of -# the role of role_list - - -for role in role_list: - for user in context.users_with_local_role(role): - temp_roles = [] - user_roles = context.get_local_roles_for_userid(user) - for i in range(0,len(user_roles)): - if user_roles[i]!=role: - temp_roles+=[user_roles[i]] - #user_roles = user_roles[0:i] + user_roles[i+1:len(user_roles)] - if len(temp_roles) is not 0: - context.manage_setLocalRoles(user,temp_roles) - else: - context.manage_delLocalRoles((user,)) -# Add roles to users -for user in user_list: - context.manage_addLocalRoles(user, role_list) diff --git a/product/Coramy/skins/coramy_erp5/Base_searchHandler.py b/product/Coramy/skins/coramy_erp5/Base_searchHandler.py deleted file mode 100755 index e7649d9adc7b844e12a0c7de02e5b12965a6f8df..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Base_searchHandler.py +++ /dev/null @@ -1,54 +0,0 @@ -## Script (Python) "Base_searchHandler" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,list_form_id,list_method_id='' -##title= -## -from Products.Formulator.Errors import ValidationError, FormValidationError -from ZTUtils import make_query - -request=context.REQUEST - -module_name = context.getId() - -# Required because sometimes list_form_id is not a string -if isinstance(list_form_id,tuple): - list_form_id = list_form_id[0] -# The type list is not working with isinstance, I have do do this bad hack -if hasattr(list_form_id,'sort'): - list_form_id = list_form_id[0] - -try: - # Validate the form - form = getattr(context,dialog_id) - form.validate_all_to_request(request) - kw = {} - for f in form.get_fields(): - k = f.id - k = k[3:] - v = getattr(request,k,None) - if v is not None and k != 'list_form_id' : - kw[k] = v - if list_method_id is not None and list_method_id != '' : - kw['list_method_id'] = list_method_id - url_params_string = make_query(kw) -except FormValidationError, validation_errors: - # Pack errors into the request - field_errors = form.ErrorFields(validation_errors) - request.set('field_errors', field_errors) - return form(request) - -if url_params_string != '': - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , list_form_id - , url_params_string - ) -else: - redirect_url = '%s/%s' % ( context.absolute_url() - , list_form_id - ) - -return request.RESPONSE.redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_erp5/DateTime_getFormattedDate.py b/product/Coramy/skins/coramy_erp5/DateTime_getFormattedDate.py deleted file mode 100755 index 08492d117d425a60512b041822f1eb0976633ae2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/DateTime_getFormattedDate.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "DateTime_getFormattedDate" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=date_time=None -##title= -## -from DateTime import DateTime - -if date_time == None : - date_time = DateTime() - -return "%2.2d/%2.2d/%s" % (date_time.day(), date_time.month(), date_time.year()) diff --git a/product/Coramy/skins/coramy_erp5/DeliveryLine_zGetRelatedQuantity.zsql b/product/Coramy/skins/coramy_erp5/DeliveryLine_zGetRelatedQuantity.zsql deleted file mode 100755 index 3ef8fb1700d19c4756cd74b0d8358e4503bfd3e6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/DeliveryLine_zGetRelatedQuantity.zsql +++ /dev/null @@ -1,22 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:10 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -SELECT - SUM(movement.quantity) AS quantity, - SUM(movement.target_quantity) AS target_quantity -FROM - category, movement -WHERE - category.category_uid = <dtml-sqlvar uid type="int"> -AND - category.uid = movement.uid -AND - category.base_category_uid = <dtml-sqlvar expr="portal_categories.delivery.getUid()" type="int"> - \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/Delivery_reindexAll.py b/product/Coramy/skins/coramy_erp5/Delivery_reindexAll.py deleted file mode 100755 index 344d84d944df6ac4e016b35bec308a259e4e8a93..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Delivery_reindexAll.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "Delivery_reindexAll" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -error_list = [] -return_list = [] - -context.portal_catalog.catalog_object(context.portal_categories,None) - -base_url = '/'.join(context.getPhysicalPath()) - -print "#### Indexing categories ####" -for id in list(context.portal_categories.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/portal_categories/%s' % (base_url, id), {}, 'recursiveImmediateReindexObject') - -# We index simulation first to make sure we can calculate tests -print "#### Indexing simulation ####" -for id in list(context.portal_simulation.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/portal_simulation/%s' % (base_url, id), {}, 'immediateReindexObject') - -for folder in context.portal_url.getPortalObject().objectValues(("ERP5 Folder",)): - print "#### Indexing contents inside folder %s ####" % folder.id - for id in list(folder.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/%s/%s' % (base_url, folder.getId(), id), {}, 'recursiveImmediateReindexObject') - -return printed diff --git a/product/Coramy/skins/coramy_erp5/Delivery_rescueOrphanedMovement.py b/product/Coramy/skins/coramy_erp5/Delivery_rescueOrphanedMovement.py deleted file mode 100755 index 4f627d5d9ea3fb493bb0b71668980e709dedfe7a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Delivery_rescueOrphanedMovement.py +++ /dev/null @@ -1,85 +0,0 @@ -## Script (Python) "Delivery_rescueOrphanedMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=fix=0 -##title=Tries to find orphaned movements to fix a given delivery -## -# Example code: - -order_uid_list = list(context.getCausalityUidList()) + [context.getUid()] # XXX We may need to filter portal_type -#order_uid_list = context.getCausalityUidList() -# We must consider delivery rules and deliveries without order (ie. order is delivery) - -# Check each existing movement in delivery -attached_to_movement = [] -requires_delivery_rule = [] -requires_new_delivery = [] -for m in context.getMovementList(): - simulation_movement_list = m.getDeliveryRelatedValueList() - if len(simulation_movement_list) > 0: - # This movement is simulated - # let us check if simulation movements point where they should - for orphaned in simulation_movement_list: - simulation_movement = orphaned.getObject() - if simulation_movement.getDelivery() != m.getRelativeUrl(): - print "Found inconsistent simulation movement %s attached to %s instead of %s" % (simulation_movement.getRelativeUrl(), simulation_movement.getDelivery(), m.getRelativeUrl()) - print "##Reindexing" - simulation_movement.immediateReindexObject() # Always fix - else: - # This movement is not simulated - # find potential orphaned - result = context.Delivery_zGetOrphanedMovementList(order_uid_list = order_uid_list, - resource_uid = m.getResourceUid(), - variation_text = m.getVariationText()) - if len(result) > 0: - for orphaned in result: - simulation_movement = orphaned.getObject() - initial_quantity = m.getQuantity() - quantity = simulation_movement.getQuantity() - print "Found orphaned movement %s attached to %s. (%s in simulation instead of %s in delivery)" % (orphaned.relative_url, m.getRelativeUrl(), quantity, initial_quantity) - attached_to_movement.append(orphaned.relative_url) - if fix: - # More job is required here XXX - simulation_movement.setDeliveryValue(m) - m.setQuantity(quantity) - print " Fixed orphaned movement %s attached to %s with simulation quantity %s" % (orphaned.relative_url, m.getRelativeUrl(), quantity) - else: - requires_delivery_rule.append(m) - -# Check each orphaned movement related to orders which we came from -print "##Building orphaned list" -result = context.Delivery_zGetOrphanedMovementList( order_uid_list = order_uid_list ) -#return map(lambda x:x.portal_type, result) -for orphaned in result: - if orphaned.relative_url not in attached_to_movement: - print "Found orphaned movement %s which requires new delivery" % orphaned.relative_url - simulation_movement = orphaned.getObject() - if simulation_movement is not None: - try: - simulation_movement.getDeliveryValue() - except: - return str(orphaned.portal_type) - if simulation_movement.getDeliveryValue() is None: - simulation_movement.setDelivery(None) - requires_new_delivery.append(simulation_movement) - else: - print "Error: has previous delivery but found as orphaned movement (%s)" % orphaned.relative_url - -# Build new deliveries -if fix: - print "Building new packing lists" - root_group = context.portal_simulation.collectMovement(requires_new_delivery) - delivery_list = context.portal_simulation.buildDeliveryList(root_group) - for delivery in delivery_list: - print " New delivery %s for causality %s" % (delivery.getRelativeUrl(), ' '.join(delivery.getCausalityList())) - -# Invoke delivery rule -if len(requires_delivery_rule) > 0: - if fix: - context.updateAppliedRule() - print "Building new delivery rule" - -return printed diff --git a/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedMovementList.zsql b/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedMovementList.zsql deleted file mode 100755 index b03ab66948e6fc4c4ee9421e8616006aba2b40a6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedMovementList.zsql +++ /dev/null @@ -1,57 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>order_uid_list:list -resource_uid -variation_text</params> -SELECT - catalog.*, - movement.quantity, - movement.target_quantity, - movement.resource_uid, - movement.variation_text, - movement.source_uid, - movement.destination_uid, - movement.start_date, - movement.stop_date, - movement.target_start_date, - movement.target_stop_date -FROM - movement AS related_order_line, - movement, - catalog AS related_order, - category AS movement_c, - catalog LEFT JOIN category ON (category.uid=catalog.uid - AND category.base_category_uid = <dtml-var "portal_categories.delivery.getUid()">) - LEFT JOIN catalog as related_delivery ON related_delivery.uid = category.category_uid -WHERE - related_delivery.uid is NULL -AND - catalog.portal_type = "Simulation Movement" -AND - catalog.uid = movement_c.uid -AND - movement_c.category_uid = related_order_line.uid -AND - movement_c.base_category_uid = <dtml-var "portal_categories.order.getUid()"> -AND - related_order_line.delivery_uid = related_order.uid -AND - catalog.uid = movement.uid -AND ( - related_order.simulation_state = 'confirmed' -OR related_order.simulation_state = 'getting_started' -OR related_order.simulation_state = 'started' -OR related_order.simulation_state = 'stopped' -OR related_order.simulation_state = 'delivered' -) -<dtml-if order_uid_list>AND (<dtml-in order_uid_list>related_order.uid = <dtml-sqlvar sequence-item type="int"> <dtml-if sequence-end><dtml-else> OR </dtml-if> </dtml-in> -)</dtml-if><dtml-if resource_uid>AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedProductionMovementList.zsql b/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedProductionMovementList.zsql deleted file mode 100755 index 79bf1ccffd97a2109e7c7ac69563c9c2a466979d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Delivery_zGetOrphanedProductionMovementList.zsql +++ /dev/null @@ -1,54 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>order_uid_list:list -resource_uid -variation_text</params> -SELECT - catalog.*, - movement.quantity, - movement.target_quantity, - movement.resource_uid, - movement.variation_text, - movement.source_uid, - movement.destination_uid, - movement.start_date, - movement.stop_date, - movement.target_start_date, - movement.target_stop_date -FROM - movement , - catalog AS related_order, - catalog AS resource, - catalog AS parent, - catalog LEFT JOIN category ON (category.uid=catalog.uid - AND category.base_category_uid = <dtml-var "portal_categories.delivery.getUid()">) - LEFT JOIN catalog as related_delivery ON related_delivery.uid = category.category_uid -WHERE - related_delivery.uid is NULL -AND - catalog.portal_type = "Simulation Movement" -AND - movement.delivery_uid = related_order.uid -AND - catalog.uid = movement.uid -AND - related_order.simulation_state = 'confirmed' -AND - movement.resource_uid = resource.uid -AND - catalog.parent_uid = parent.uid -AND ((parent.id = "default_transformation_sourcing_rule" -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu")) -OR (parent.id = "default_transformation_rule" -AND (resource.portal_type = "Modele" OR resource.portal_type = "Composant" OR resource.portal_type = "Tissu" OR resource.portal_type = "Category"))) -<dtml-if order_uid_list>AND <dtml-in order_uid_list>related_order.uid = <dtml-sqlvar sequence-item type="int"> <dtml-if sequence-end><dtml-else> OR </dtml-if> </dtml-in> -</dtml-if><dtml-if resource_uid>AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/ERP5Site_reindexAll.py b/product/Coramy/skins/coramy_erp5/ERP5Site_reindexAll.py deleted file mode 100755 index c5c4c3530dd503c95a08a0508cb086564fd761ac..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/ERP5Site_reindexAll.py +++ /dev/null @@ -1,32 +0,0 @@ -## Script (Python) "ERP5Site_reindexAll" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -error_list = [] -return_list = [] - -context.portal_catalog.catalog_object(context.portal_categories,None) - -base_url = '/'.join(context.getPhysicalPath()) - -print "#### Indexing categories ####" -for id in list(context.portal_categories.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/portal_categories/%s' % (base_url, id), None, {}, 'recursiveImmediateReindexObject') - -# We index simulation first to make sure we can calculate tests (ie. related quantity) -print "#### Indexing simulation ####" -for id in list(context.portal_simulation.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/portal_simulation/%s' % (base_url, id), None, {}, 'immediateReindexObject') - -for folder in context.portal_url.getPortalObject().objectValues(("ERP5 Folder",)): - print "#### Indexing contents inside folder %s ####" % folder.id - for id in list(folder.objectIds()): - context.portal_activities.newMessage('SQLDict', '%s/%s/%s' % (base_url, folder.getId(), id), None, {}, 'recursiveImmediateReindexObject') - #context.portal_activities.newMessage('SQLDict', '%s/%s/%s' % (base_url, folder.getId(), id), None, {}, 'Folder_reindexAll') - -return printed diff --git a/product/Coramy/skins/coramy_erp5/ERP5Site_reindexCurrentMovement.py b/product/Coramy/skins/coramy_erp5/ERP5Site_reindexCurrentMovement.py deleted file mode 100755 index 369b1d2ba25fec2625b3bba4510fe9899581716c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/ERP5Site_reindexCurrentMovement.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "ERP5Site_reindexCurrentMovement" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -folder_id_list = ['mouvement_mp', 'mouvement_pf', 'livraison_achat', - 'livraison_vente', 'livraison_fabrication'] - -for folder in context.portal_url.getPortalObject().objectValues(("ERP5 Folder",)): - if folder.getId() in folder_id_list: - print "#### Indexing contents inside folder %s ####" % folder.id - for o in folder.objectValues(): - o.activate(priority=5).recursiveImmediateReindexObject() - -return printed diff --git a/product/Coramy/skins/coramy_erp5/Folder_createModule.py b/product/Coramy/skins/coramy_erp5/Folder_createModule.py deleted file mode 100755 index b9bef6d673a806779e159c21d7dabec37a9b8b9b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Folder_createModule.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Folder_createModule" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=module_id='0', module_title='', module_type='' -##title= -## -request = context.REQUEST - -module_title = module_title.replace('_',' ') -module_type = module_type.replace('_',' ') -context.portal_types.constructContent(type_name=module_type, - container = context, - title = module_title, - id = module_id) - -redirect_url = '%s?%s' % ( context.absolute_url()+'/'+module_id - , 'portal_status_message=1+module+créé.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_erp5/Folder_workflowAction.form b/product/Coramy/skins/coramy_erp5/Folder_workflowAction.form deleted file mode 100755 index 3492146c6df95f66b1bee69ee466bdd203d10893..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Folder_workflowAction.form +++ /dev/null @@ -1,103 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Validate</title> - <name>base_folder_workflow_action</name> - <action>Folder_workflowStatusModify</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_workflow_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/LivraisonVente_fixEqualQuantity.py b/product/Coramy/skins/coramy_erp5/LivraisonVente_fixEqualQuantity.py deleted file mode 100755 index e9a00b32c1eecdb936b7c5c15c727c73feaf35d1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/LivraisonVente_fixEqualQuantity.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "LivraisonVente_fixEqualQuantity" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -blist = list(context.LivraisonVente_searchEqualQuantity()) -context.portal_simulation.commitTransaction() - -for b in blist: - o = b.getObject() - if o is not None: - if o.getQuantity() != o.getRelatedQuantity(): - if o.getRelatedQuantity() is None: - print "Not Fixeable %s %s %s" % (o.getRelativeUrl(), o.getQuantity(), o.getRelatedQuantity()) - else: - print "Fixed %s %s %s" % (o.getRelativeUrl(), o.getQuantity(), o.getRelatedQuantity()) - o.edit(quantity = o.getRelatedQuantity()) - - -return printed diff --git a/product/Coramy/skins/coramy_erp5/LivraisonVente_fixNoneQuantity.py b/product/Coramy/skins/coramy_erp5/LivraisonVente_fixNoneQuantity.py deleted file mode 100755 index f8290a20fbb3e99f95904a68f23e6c23abc8e8be..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/LivraisonVente_fixNoneQuantity.py +++ /dev/null @@ -1,28 +0,0 @@ -## Script (Python) "LivraisonVente_fixNoneQuantity" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -blist = list(context.LivraisonVente_searchNoneQuantity()) -context.portal_simulation.commitTransaction() - -for b in blist: - o = b.getObject() - if o is not None: - if o.getQuantity() == o.getRelatedQuantity(): - #print "Fixed equal %s %s %s" % (o.getRelativeUrl(), o.getQuantity(), o.getRelatedQuantity()) - #o.edit(quantity = o.getQuantity(), force_update = 1) - pass - else: - if o.getRelatedQuantity() is None: - print "Not Fixeable %s %s %s" % (o.getRelativeUrl(), o.getQuantity(), o.getRelatedQuantity()) - else: - print "Fixed different %s %s %s" % (o.getRelativeUrl(), o.getQuantity(), o.getRelatedQuantity()) - o.edit(quantity = o.getRelatedQuantity()) - o.commitTransaction() - -return printed diff --git a/product/Coramy/skins/coramy_erp5/LivraisonVente_searchEqualQuantity.zsql b/product/Coramy/skins/coramy_erp5/LivraisonVente_searchEqualQuantity.zsql deleted file mode 100755 index 65d231f6e922609d5a6bee93b26a8eda880c4cc1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/LivraisonVente_searchEqualQuantity.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - catalog.* -FROM - catalog LEFT JOIN movement ON (catalog.uid = movement.uid) -WHERE - catalog.portal_type = "Sales Packing List Line" -AND movement.is_accountable = 1 -AND movement.quantity = movement.target_quantity \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/LivraisonVente_searchNoneQuantity.zsql b/product/Coramy/skins/coramy_erp5/LivraisonVente_searchNoneQuantity.zsql deleted file mode 100755 index 99c35436559fc7935e75e2e7f3c9314b5d86bfea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/LivraisonVente_searchNoneQuantity.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - catalog.* -FROM - catalog LEFT JOIN movement ON (catalog.uid = movement.uid) -WHERE - catalog.portal_type = "Sales Packing List Line" -AND movement.is_accountable = 1 -AND movement.has_cell_content = 0 \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/Movement_resetTargetQuantity.py b/product/Coramy/skins/coramy_erp5/Movement_resetTargetQuantity.py deleted file mode 100755 index d6ea2c2c7baa7094c2b55f783e7925cc7f2d9350..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Movement_resetTargetQuantity.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "Movement_resetTargetQuantity" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -movement = context - -movement.setProperty(key='target_quantity',value=0) diff --git a/product/Coramy/skins/coramy_erp5/Movement_search.zsql b/product/Coramy/skins/coramy_erp5/Movement_search.zsql deleted file mode 100755 index 3aae4a8cbfe046293df917adb63088432cfe0e3a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Movement_search.zsql +++ /dev/null @@ -1,34 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>resource_uid -variation_text -source_uid -destination_uid -start_date -stop_date -target_start_date -target_stop_date</params> -SELECT - catalog.* -FROM - catalog, movement -WHERE - catalog.uid = movement.uid -AND movement.is_accountable = 1 -AND catalog.portal_type <> "Simulation Movement" -<dtml-if resource_uid>AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if><dtml-if source_uid>AND movement.source_uid = <dtml-sqlvar source_uid type="int"> -</dtml-if><dtml-if destination_uid>AND movement.destination_uid = <dtml-sqlvar destination_uid type="int"> -</dtml-if><dtml-if start_date>AND movement.start_date = <dtml-sqlvar start_date type="string"> -</dtml-if><dtml-if stop_date>AND movement.stop_date = <dtml-sqlvar stop_date type="string"> -</dtml-if><dtml-if target_start_date>AND movement.start_date = <dtml-sqlvar target_start_date type="string"> -</dtml-if><dtml-if target_stop_date>AND movement.stop_date = <dtml-sqlvar target_stop_date type="string"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/OrderLine_zGetRelatedQuantity.zsql b/product/Coramy/skins/coramy_erp5/OrderLine_zGetRelatedQuantity.zsql deleted file mode 100755 index 1c601a1b8fb994c63c5074ed4ce963c030499ced..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/OrderLine_zGetRelatedQuantity.zsql +++ /dev/null @@ -1,22 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -SELECT - SUM(movement.quantity) AS quantity, - SUM(movement.target_quantity) AS target_quantity -FROM - category, movement -WHERE - category.category_uid = <dtml-sqlvar uid type="int"> -AND - category.uid = movement.uid -AND - category.base_category_uid = <dtml-sqlvar expr="portal_categories.order.getUid()" type="int"> - \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/Order_cleanDuplicates.py b/product/Coramy/skins/coramy_erp5/Order_cleanDuplicates.py deleted file mode 100755 index b98de568d051e0733dd605f86d6d1b1a1844934c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Order_cleanDuplicates.py +++ /dev/null @@ -1,73 +0,0 @@ -## Script (Python) "Order_cleanDuplicates" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Use this script to test if simulation state is acceptable - -def hasDelivery(ps_item): - for m in ps_item.objectValues(): - if len(m.getCategoryMembershipList('delivery')) > 0: - return 1 - for a in m.objectValues(): - if hasDelivery(a): - return 1 - return 0 - -def getDeliveryList(ps_item): - result = {} - for m in ps_item.objectValues(): - for d in m.getDeliveryValueList(): - if d is not None: - result[d.getRelativeUrl()] = 1 - for a in m.objectValues(): - result.update( getDeliveryList(a)) - return result - -of = context -if of.getSimulationState() not in ('draft', 'cancelled', 'auto_planned'): - ps = of.getCausalityRelatedValueList(portal_type="Applied Rule") - if len(ps) == 0: - print " Missing PS for Order %s of type %s" % (of.getId(), of.getPortalType()) - print " Reexpand order %s" % of.getId() - of.edit() - elif len(ps) > 1: - print " Too many PS for Order %s of type %s" % (of.getId(), of.getPortalType()) - no_delivery = [] - delivery = [] - for ps_item in ps: - if hasDelivery(ps_item): - print " PS %s has some delivered movements" % ps_item.getId() - delivery.append(ps_item) - else: - print " PS %s has no delivered movements" % ps_item.getId() - no_delivery.append(ps_item) - # manage_delObjects - if len(delivery) > 0: - # Only erase no_delivery if one item has delivery - for ps_item in no_delivery: - print " Delete PS %s" % ps_item.getId() - parent = ps_item.aq_parent - parent.deleteContent(ps_item.getId()) - else: - # Keep at least one - for ps_item in no_delivery[1:]: - print " Delete PS %s" % ps_item.getId() - id = ps_item.getId() - parent = ps_item.aq_parent - parent.deleteContent(ps_item.getId()) - if len(delivery) > 1: - # We erase the Applied Rule but keep - # some excessive packing lists which may have been generated - # THIS BREAKS CONSISTENCY - for ps_item in delivery[1:]: - print " Delete PS %s with BREAKS CONSISTENCY" % ps_item.getId() - id = ps_item.getId() - parent = ps_item.aq_parent - #parent.deleteContent(ps_item.getId()) - -return printed diff --git a/product/Coramy/skins/coramy_erp5/PT_pageBreak.py b/product/Coramy/skins/coramy_erp5/PT_pageBreak.py deleted file mode 100755 index e7c9feea4791359e15ea45097f6c5e578f956af4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PT_pageBreak.py +++ /dev/null @@ -1,14 +0,0 @@ -## Script (Python) "PT_pageBreak" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=page_number -##title= -## -page_number[0] = page_number[0] + 1 -if page_number[0] == 1 : - return "toto" -else : - return "PageA4" diff --git a/product/Coramy/skins/coramy_erp5/PT_reset_total_list.py b/product/Coramy/skins/coramy_erp5/PT_reset_total_list.py deleted file mode 100755 index 4a9790249f4bbc79cb022ca7f901bc155ac6ba51..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PT_reset_total_list.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "PT_reset_total_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=totalizer, index_list=[0] -##title= -## -# used in page templates to reset some total_sums -# uses a list named 'totalizer' which contains sums - -for i in index_list : - try : - totalizer[i] = 0 - except : - pass diff --git a/product/Coramy/skins/coramy_erp5/PT_update_total_list.py b/product/Coramy/skins/coramy_erp5/PT_update_total_list.py deleted file mode 100755 index b1ec49c61685d6e131189e8181387cea8b2169c6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PT_update_total_list.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "PT_update_total_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=totalizer, index_list=[0], value=0 -##title= -## -# used in page templates to make sums -# uses a list named 'totalizer' which contains sums - -for i in index_list : - try : - totalizer[i] = totalizer[i] + value - except : - pass diff --git a/product/Coramy/skins/coramy_erp5/PortalSimulation_cleanup.py b/product/Coramy/skins/coramy_erp5/PortalSimulation_cleanup.py deleted file mode 100755 index a0832c7e2919e8012086b29c0e84e2a873e4a49e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PortalSimulation_cleanup.py +++ /dev/null @@ -1,36 +0,0 @@ -## Script (Python) "PortalSimulation_cleanup" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -process = context.portal_activities.newActiveProcess() -base_url = '/'.join(context.portal_url.getPortalObject().getPhysicalPath()) - -# ---------------------------------------------------------- -# First make sure all simulation movements point to an order - -print "-- Checking simulation" -for id in context.portal_simulation.objectIds(): - print " AppliedRule_cleanOrphadedOrder %s" % id - context.portal_activities.newMessage('SQLDict', '%s/portal_simulation/%s' % (base_url, id), process, {}, 'AppliedRule_cleanOrphanedOrder') - -# ---------------------------------------------------------- -# Next make sure all orders in > planned state have at most one applied rule - -for module_id in ('ordre_fabrication','commande_achat','commande_vente',): - for id in context[module_id].objectIds(): - print " Order_cleanDuplicates %s/%s" % (module_id , id) - context.portal_activities.newMessage('SQLDict', '%s/%s/%s' % (base_url, module_id, id), process, {}, 'Order_cleanDuplicates') - -# ---------------------------------------------------------- -# Next make sure all movements in a delivery of material point to simulation - - -# ---------------------------------------------------------- -# Next make sure all movements in a delivery of material point to simulation - -return printed diff --git a/product/Coramy/skins/coramy_erp5/PortalSimulation_rescueOrphaned.py b/product/Coramy/skins/coramy_erp5/PortalSimulation_rescueOrphaned.py deleted file mode 100755 index 79b148698a93431b12fcc743d62abb4c005603e5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PortalSimulation_rescueOrphaned.py +++ /dev/null @@ -1,276 +0,0 @@ -## Script (Python) "PortalSimulation_rescueOrphaned" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -exception_order = ['303',] - -orphaned_delivery_related_list = {} -orphaned_delivery_related_quantity = {} -exception_order = ['303',] - -orphaned_delivery_related_list = {} -has_delivery_rule_related_list = {} -orphaned_delivery_related_quantity = {} -orphaned_delivery_related_target_quantity = {} -orphaned_delivery_list = {} -orphaned_delivery_quantity = {} -orphaned_delivery_target_quantity = {} -build_delivery_list = [] - -m_list = list(context.Delivery_zGetOrphanedProductionMovementList()) + list(context.Delivery_zGetOrphanedMovementList()) -#m_list = context.Delivery_zGetOrphanedProductionMovementList() -#m_list = context.Delivery_zGetOrphanedMovementList() -for b in m_list: - m = b.getObject() - if m.getDeliveryValue() is None: - # Only process orphaned - if m.getNetConvertedTargetQuantity() is None: - return "Error for target_quantity on %s" % m.getRelativeUrl() - if m.getNetConvertedQuantity() is None: - return "Error for quantity on %s" % m.getRelativeUrl() - ra = m.getRootAppliedRule() - order = ra.getCausalityValue() # Order - if order is not None: - order_id = order.getId() - order_relative_url = order.getRelativeUrl() - else: - order_id = 'UNKNOWN ORDER' - order_relative_url = None - if order_id not in exception_order: - print "Trying to fix order %s: %s" % (order_relative_url , b.path) - candidates = context.Movement_search(resource_uid = b.resource_uid, variation_text = b.variation_text, - source_uid = m.getSourceUid(), destination_uid = m.getDestinationUid()) - found_candidate = 0 - if len(candidates) > 0: - for dm in candidates: - dm_object = dm.getObject() - if dm_object is not None: - if order_relative_url in dm_object.getDeliveryValue().getCausalityList(): - is_orphaned = not dm_object.isSimulated() - quantity_difference = dm_object.getNetConvertedQuantity() - m.getNetConvertedQuantity() - target_quantity_difference = dm_object.getNetConvertedTargetQuantity() - m.getNetConvertedTargetQuantity() - is_identical = quantity_difference == 0 - # We must test here is this object has a delivery rule attached to - # we may have to remove some delivery rules... - simulation_m = dm_object.getDeliveryRelatedValueList() - if len(simulation_m) == 1: - if simulation_m[0].getRootAppliedRule().getDefaultCausalityValue().getPortalType() == "Delivery Rule": - has_delivery_rule = 0 - else: - has_delivery_rule = 1 - else: - has_delivery_rule = 0 - print " found related %s orphaned: %s order: %s identical: %s drule: %s delivery q/t: %s %s simulation q/t: %s %s" % ( - dm_object.getRelativeUrl(), - is_orphaned, - dm_object.getCausalityList(), - is_identical, - has_delivery_rule, - dm_object.getNetConvertedQuantity(), - dm_object.getNetConvertedTargetQuantity(), - m.getNetConvertedQuantity(), - m.getNetConvertedTargetQuantity(), ) - if is_orphaned or has_delivery_rule: - # Only orphaned movements are good candidates - found_candidate = 1 - # Build dm_object to m mapping - if not orphaned_delivery_related_list.has_key(dm_object): - orphaned_delivery_related_list[dm_object] = [] - has_delivery_rule_related_list[dm_object] = [] - orphaned_delivery_related_quantity[dm_object] = 0.0 - orphaned_delivery_related_target_quantity[dm_object] = 0.0 - if m not in orphaned_delivery_related_list[dm_object]: - # Do not count twice - orphaned_delivery_related_list[dm_object].append(m) - if has_delivery_rule: has_delivery_rule_related_list[dm_object].append(m) - orphaned_delivery_related_quantity[dm_object] = orphaned_delivery_related_quantity[dm_object] + m.getNetConvertedQuantity() - orphaned_delivery_related_target_quantity[dm_object] = orphaned_delivery_related_target_quantity[dm_object] + \ - m.getNetConvertedTargetQuantity() - # Build m to dm_object mapping - if not orphaned_delivery_list.has_key(m): - orphaned_delivery_list[m] = [] - orphaned_delivery_quantity[m] = 0.0 - orphaned_delivery_target_quantity[m] = 0.0 - if dm_object not in orphaned_delivery_list[m]: - # Do not count twice - orphaned_delivery_list[m].append(dm_object) - orphaned_delivery_quantity[m] = orphaned_delivery_quantity[m] + dm_object.getNetConvertedQuantity() # Quantity is likely 0 - orphaned_delivery_target_quantity[m] = orphaned_delivery_target_quantity[m] + \ - dm_object.getNetConvertedTargetQuantity() # Quantity is likely 0 - if not found_candidate: - # Best solution is probably to create a new delivery - if order is not None: - for delivery in order.getCausalityRelatedValueList(portal_type=("Sales Packing List", "Purchase Packing List", - "Production Report", "Production Packing List", "Sale Packing List" )): - print " portential delivery %s" % delivery.getRelativeUrl() - else: - print " no order found" - build_delivery_list.append(m) - -print "=======================================================" -print "N to 1 aggregates" -for dm_object in orphaned_delivery_related_list.keys(): - if dm_object.getNetConvertedQuantity() == orphaned_delivery_related_quantity[dm_object]: - print " Found matching N(%s) quantity to 1 quantity aggregate for %s" % ( - len(orphaned_delivery_related_list[dm_object]), dm_object.getRelativeUrl()) - for m in orphaned_delivery_related_list[dm_object]: - print " #### attaching %s to %s" % (m.getRelativeUrl() , dm_object.getRelativeUrl()) - #m.setDeliveryValue(dm_object) - del orphaned_delivery_list[m] # Not needed anylonger since we found a solution - del orphaned_delivery_quantity[m] # Not needed anylonger since we found a solution - elif dm_object.getNetConvertedTargetQuantity() == orphaned_delivery_related_target_quantity[dm_object]: - print " Found matching N(%s) target_quantity to 1 target_quantity aggregate for %s" % ( - len(orphaned_delivery_related_list[dm_object]), dm_object.getRelativeUrl()) - print " #### updating quantity of %s" % dm_object.getRelativeUrl() - #dm_object.setNetConvertedQuantity(orphaned_delivery_related_quantity[dm_object]) # Update quantity to meet simulation - for m in orphaned_delivery_related_list[dm_object]: - print " #### attaching %s to %s" % (m.getRelativeUrl() , dm_object.getRelativeUrl()) - #m.setDeliveryValue(dm_object) - del orphaned_delivery_list[m] # Not needed anylonger since we found a solution - del orphaned_delivery_quantity[m] # Not needed anylonger since we found a solution - elif dm_object.getNetConvertedQuantity() == 0 and dm_object.getNetConvertedTargetQuantity() != 0: - # Probably delivery relation renamed at some point - print " Found zeroed N(%s) to 1 aggregate for %s" % ( - len(orphaned_delivery_related_list[dm_object]), dm_object.getRelativeUrl()) - print " #### updating quantity of %s" % dm_object.getRelativeUrl() - #dm_object.setNetConvertedQuantity(orphaned_delivery_related_quantity[dm_object]) # Update quantity to meet simulation - for m in orphaned_delivery_related_list[dm_object]: - print " #### attaching %s to %s" % (m.getRelativeUrl() , dm_object.getRelativeUrl()) - #m.setDeliveryValue(dm_object) - del orphaned_delivery_list[m] # Not needed anylonger since we found a solution - del orphaned_delivery_quantity[m] # Not needed anylonger since we found a solution - else: - print " Found non matching N(%s) to 1 aggregate for %s delivery q/t: %s %s simulation q/t: %s %s" % ( - len(orphaned_delivery_related_list[dm_object]), - dm_object.getRelativeUrl(), - dm_object.getNetConvertedQuantity(), dm_object.getNetConvertedTargetQuantity(), - orphaned_delivery_related_quantity[dm_object], orphaned_delivery_related_target_quantity[dm_object]) - print " #### updating quantity of %s" % dm_object.getRelativeUrl() - #dm_object.setNetConvertedQuantity(orphaned_delivery_related_quantity[dm_object]) # Update quantity to meet simulation - for m in orphaned_delivery_related_list[dm_object]: - print " #### attaching %s to %s" % (m.getRelativeUrl() , dm_object.getRelativeUrl()) - #m.setDeliveryValue(dm_object) - del orphaned_delivery_list[m] # Not needed anylonger since we found a solution - del orphaned_delivery_quantity[m] # Not needed anylonger since we found a solution - -print "=======================================================" -print "1 to N > 1 aggregates" -for m in orphaned_delivery_list.keys(): - if len(orphaned_delivery_list[m]) > 1: - # 1 to 1 should be already processed at this point - if m.getNetConvertedQuantity() == orphaned_delivery_target_quantity[m]: - print " Found matching 1 to N(%s) aggregate for %s" % (len(orphaned_delivery_list[m]), m.getRelativeUrl()) - dm_object = orphaned_delivery_list[m][0] - print " #### attaching %s to %s q/t: %s %s" % (m.getRelativeUrl(), dm_object.getRelativeUrl(), - dm_object.getNetConvertedQuantity(), dm_object.getNetConvertedTargetQuantity()) - # XXX What about quantity_unit -# m.edit( -# target_start_date = dm_object.getTargetStartDate(), -# target_stop_date = dm_object.getTargetStopDate(), -# start_date = dm_object.getStartDate(), -# stop_date = dm_object.getStopDate(), -# quantity = dm_object.getQuantity(), -# target_quantity = dm_object.getTargetQuantity(), -# delivery = dm_object.getRelativeUrl(), -# ) - for i in range(len(orphaned_delivery_list[m]) - 1): - new_id = "%s_fixsplit_%s" % (m.getId(), i) - dm_object = orphaned_delivery_list[m][i+1] - print " #### creating new simulation movement %s attached to %s q/t: %s %s" % (new_id, dm_object.getRelativeUrl(), - dm_object.getNetConvertedQuantity(), - dm_object.getNetConvertedTargetQuantity()) - # XXX What about quantity_unit -# new_movement = m.aq_parent.newContent(portal_type = "Simulation Movement", -# id = new_id, -# efficiency = m.getEfficiency(), -# target_efficiency = m.getTargetEfficiency(), -# target_start_date = dm_object.getTargetStartDate(), -# target_stop_date = dm_object.getTargetStopDate(), -# start_date = dm_object.getStartDate(), -# stop_date = dm_object.getStopDate(), -# quantity = dm_object.getQuantity(), -# target_quantity = dm_object.getTargetQuantity(), -# delivery = dm_object.getRelativeUrl(), -# source = m.getSource(), -# destination = m.getDestination(), -# source_section = m.getSourceSection(), -# destination_section = m.getDestinationSection(), -# order = m.getOrder() -# ) - else: - print " Found non matching 1 to N(%s) aggregate for %s delivery q/t: %s %s simulation q/t: %s %s" % ( - len(orphaned_delivery_list[m]), m.getRelativeUrl(), - orphaned_delivery_quantity[m], orphaned_delivery_target_quantity[m], - m.getNetConvertedQuantity(), m.getNetConvertedTargetQuantity(), - ) - dm_object = orphaned_delivery_list[m][0] - print " #### attaching %s to %s q/t: %s %s" % (m.getRelativeUrl(), dm_object.getRelativeUrl(), - dm_object.getNetConvertedQuantity(), dm_object.getNetConvertedTargetQuantity()) - # XXX What about quantity_unit -# m.edit( -# target_start_date = dm_object.getTargetStartDate(), -# target_stop_date = dm_object.getTargetStopDate(), -# start_date = dm_object.getStartDate(), -# stop_date = dm_object.getStopDate(), -# quantity = dm_object.getQuantity(), -# target_quantity = dm_object.getTargetQuantity(), -# delivery = dm_object.getRelativeUrl(), -# ) - for i in range(len(orphaned_delivery_list[m]) - 1): - new_id = "%s_fixsplit_%s" % (m.getId(), i) - dm_object = orphaned_delivery_list[m][i+1] - print " #### creating new simulation movement %s attached to %s q/t: %s %s" % (new_id, dm_object.getRelativeUrl(), - dm_object.getNetConvertedQuantity(), - dm_object.getNetConvertedTargetQuantity()) - # XXX What about quantity_unit -# new_movement = m.aq_parent.newContent(portal_type = "Simulation Movement", -# id = new_id, -# efficiency = m.getEfficiency(), -# target_efficiency = m.getTargetEfficiency(), -# target_start_date = dm_object.getTargetStartDate(), -# target_stop_date = dm_object.getTargetStopDate(), -# start_date = dm_object.getStartDate(), -# stop_date = dm_object.getStopDate(), -# quantity = dm_object.getQuantity(), -# target_quantity = dm_object.getTargetQuantity(), -# delivery = dm_object.getRelativeUrl(), -# source = m.getSource(), -# destination = m.getDestination(), -# source_section = m.getSourceSection(), -# destination_section = m.getDestinationSection(), -# order = m.getOrder() -# ) - -print "=======================================================" -print "New deliveries" - -#root_group = context.portal_simulation.collectMovement(build_delivery_list) -#delivery_list = context.portal_simulation.buildDeliveryList(root_group) -#for delivery in delivery_list: -# print "New delivery %s for causality %s" % (delivery.getRelativeUrl(), ' '.join(delivery.getCausalityList())) - -print '\n'.join(map(lambda x:x.getRelativeUrl(), build_delivery_list)) - -print "=======================================================" -print "Reexpand delivery rules (and delete duplicate delivery relations)" -for arb in context.portal_rules.default_delivery_rule.getSpecialiseRelatedValueList(): - ar = arb.getObject() - before = len(ar.objectIds()) - #ar.expand() - after = len(ar.objectIds()) - print " reexpand %s before: %s after: %s" % (ar.getRelativeUrl(), before, after) - - -print "=======================================================" -print "TODO" - -print " compare quantities in simulation and deliveries" - - - -return printed diff --git a/product/Coramy/skins/coramy_erp5/PortalSimulation_updateInventory.py b/product/Coramy/skins/coramy_erp5/PortalSimulation_updateInventory.py deleted file mode 100755 index 87ef0e8fa42b6c1744b5123cf5e466aa76090178..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PortalSimulation_updateInventory.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "PortalSimulation_updateInventory" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -for b in context.SimulationTool_zGetSortedInventoryList(): - print "#### Indexing Inventory %s ####" % b.relative_url - o = b.getObject() - if o is not None: o.activate(priority=4).recursiveImmediateReindexObject() - -return printed diff --git a/product/Coramy/skins/coramy_erp5/PortalSimulation_zGetResourceList.zsql b/product/Coramy/skins/coramy_erp5/PortalSimulation_zGetResourceList.zsql deleted file mode 100755 index 142be25c719e648730dd601030f82d76f037661a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/PortalSimulation_zGetResourceList.zsql +++ /dev/null @@ -1,16 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:100000 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT DISTINCT - movement.resource_uid, - catalog.relative_url AS resource_relative_url, - movement.variation_text -FROM - movement LEFT JOIN catalog ON (catalog.uid = movement.resource_uid) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_assignMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_assignMessage.zsql deleted file mode 100755 index b55f434068db44184d2555b9e9f30d2dd5162800..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_assignMessage.zsql +++ /dev/null @@ -1,25 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -processing_node -method_id -uid=None</params> -UPDATE message -SET - processing_node=<dtml-sqlvar processing_node type="int">, - processing=0 -WHERE -<dtml-if uid> -<dtml-in uid>uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> - OR </dtml-if></dtml-in> -<dtml-else> - path = <dtml-sqlvar path type="string"> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_createMessageTable.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_createMessageTable.zsql deleted file mode 100755 index 2bf8854dc5086ffa40118a8ae43bc9f6e1dc508c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_createMessageTable.zsql +++ /dev/null @@ -1,27 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -CREATE TABLE `message` ( - `uid` int(11) NOT NULL auto_increment, - `date` datetime, - `path` VARCHAR(255), - `method_id` VARCHAR(40), - `processing_node` INT DEFAULT -1, - `processing` INT DEFAULT 0, - `priority` INT DEFAULT 0, - `message` BLOB, - PRIMARY KEY (`uid`), - KEY `date` (`date`), - KEY `path` (`path`), - KEY `method_id` (`method_id`), - KEY `processing_node` (`processing_node`), - KEY `processing` (`processing`), - KEY `priority` (`priority`), -) TYPE = InnoDB; \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_delMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_delMessage.zsql deleted file mode 100755 index ce78ddf2a8ff85b0a2d8ebb79f037c0b568ae48f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_delMessage.zsql +++ /dev/null @@ -1,15 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid:list</params> -DELETE FROM - message -WHERE -<dtml-in uid>uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if> -</dtml-in> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_hasMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_hasMessage.zsql deleted file mode 100755 index e4df3004409587dad5d491271397b16598f005b4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_hasMessage.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1 -max_cache:100 -cache_time:1 -class_name: -class_file: -</dtml-comment> -<params>path -method_id</params> -SELECT count(path) as message_count FROM - message -<dtml-if "path or method_id"> -WHERE -<dtml-if path> path = <dtml-sqlvar path type="string"></dtml-if> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> -</dtml-if> - \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_lockMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_lockMessage.zsql deleted file mode 100755 index 111ce16ba90f5fc15b69be7a0884329ff06a66f2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_lockMessage.zsql +++ /dev/null @@ -1,11 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -LOCK TABLES message WRITE \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_processMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_processMessage.zsql deleted file mode 100755 index 23dbae6cdd2285aece7834bd2222fc3e7d46db6a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_processMessage.zsql +++ /dev/null @@ -1,15 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -UPDATE message -SET processing=1 -WHERE -<dtml-in uid>uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> - OR </dtml-if></dtml-in> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_readMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_readMessage.zsql deleted file mode 100755 index fd34f808c755fb0a345efc24140a8ed345aa0f71..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_readMessage.zsql +++ /dev/null @@ -1,20 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>processing_node -priority</params> -SELECT * FROM - message -WHERE - processing <> 1 -<dtml-if processing_node> AND processing_node = <dtml-sqlvar processing_node type="int"></dtml-if> -<dtml-if priority> AND priority = <dtml-sqlvar priority type="int"> </dtml-if> - -ORDER BY - priority, date diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_readMessageList.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_readMessageList.zsql deleted file mode 100755 index b198b085fb1d76a6d6caa3ce8998817574c0a5f7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_readMessageList.zsql +++ /dev/null @@ -1,25 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -method_id -processing_node -priority</params> -SELECT * FROM - message -WHERE - processing <> 1 -<dtml-if processing_node>AND processing_node = <dtml-sqlvar processing_node type="int"> </dtml-if> -<dtml-if priority>AND priority = <dtml-sqlvar priority type="int"> </dtml-if> -<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> -GROUP BY - path, method_id, processing_node, processing -ORDER BY - priority, date diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_readUidList.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_readUidList.zsql deleted file mode 100755 index 9d76cdf3d521b9e4b9eb20ee43a8a082ddf5620a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_readUidList.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>processing_node -method_id -path</params> -SELECT uid FROM - message -WHERE - processing <> 1 -<dtml-if processing_node> AND processing_node = <dtml-sqlvar processing_node type="int"></dtml-if> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> -<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_setPriority.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_setPriority.zsql deleted file mode 100755 index a8a1280f96d5c32732359732537c8749ed60e076..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_setPriority.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid:list -priority</params> -UPDATE - message -SET - priority = <dtml-sqlvar priority type="int">, - processing = 0 -WHERE -<dtml-in uid>uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> - OR </dtml-if></dtml-in> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_unlockMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_unlockMessage.zsql deleted file mode 100755 index 163752fb09d26ee1feaa18e2793d0c31f892ccb8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_unlockMessage.zsql +++ /dev/null @@ -1,11 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -UNLOCK TABLES \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLDict_writeMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLDict_writeMessage.zsql deleted file mode 100755 index 70fbb74a37d2907f9de2e4c21734c0226d78e1aa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLDict_writeMessage.zsql +++ /dev/null @@ -1,22 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -method_id -message -priority</params> -INSERT INTO message -SET - path = <dtml-sqlvar path type="string">, - date = <dtml-sqlvar "_.DateTime()" type="string">, - method_id = <dtml-sqlvar method_id type="string">, - processing_node = -1, - processing = -1, - priority = <dtml-sqlvar priority type="int">, - message = <dtml-sqlvar message type="string"> diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_assignMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_assignMessage.zsql deleted file mode 100755 index 7e1edea718117e2d36b2f62dd7cca6364ec8ccca..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_assignMessage.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -processing_node -method_id -uid:int=0</params> -UPDATE message_queue -SET - processing_node=<dtml-sqlvar processing_node type="int">, - processing=0 -WHERE -<dtml-if path> path = <dtml-sqlvar path type="string"> -<dtml-else> uid = <dtml-sqlvar uid type="int"> </dtml-if> -<dtml-if method_id> AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_createMessageTable.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_createMessageTable.zsql deleted file mode 100755 index ffd63cfee11b3d12f68f18f660fe3c49f75d5967..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_createMessageTable.zsql +++ /dev/null @@ -1,25 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -CREATE TABLE `message_queue` ( - `uid` int(11) NOT NULL auto_increment, - `path` VARCHAR(255), - `method_id` VARCHAR(40), - `processing_node` INT DEFAULT -1, - `processing` INT DEFAULT 0, - `priority` INT DEFAULT 0, - `message` BLOB, - PRIMARY KEY (`uid`), - KEY `path` (`path`), - KEY `method_id` (`method_id`), - KEY `processing_node` (`processing_node`), - KEY `processing` (`processing`), - KEY `priority` (`priority`), -) TYPE = InnoDB; \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_delMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_delMessage.zsql deleted file mode 100755 index 91557f53836712ff24a36df65dbd59e56ec73743..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_delMessage.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -DELETE FROM - message_queue -WHERE - uid = <dtml-sqlvar uid type="int"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_hasMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_hasMessage.zsql deleted file mode 100755 index 00a26b9bb043ab88e09f52045a41f0ed53c28de8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_hasMessage.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1 -max_cache:100 -cache_time:1 -class_name: -class_file: -</dtml-comment> -<params>path -method_id</params> -SELECT count(path) as message_count FROM - message_queue -<dtml-if "path or method_id"> -WHERE -<dtml-if path> path = <dtml-sqlvar path type="string"></dtml-if> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> -</dtml-if> - \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_processMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_processMessage.zsql deleted file mode 100755 index 69c8607835ec237066698d841db8e12f7f4742ad..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_processMessage.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -UPDATE message_queue -SET processing=1 -WHERE - uid = <dtml-sqlvar uid type="int"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_readMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_readMessage.zsql deleted file mode 100755 index 8ef8d1dbbb598565a93b24923f8079b5866cbf46..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_readMessage.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>processing_node -priority</params> -SELECT * FROM - message_queue -WHERE - processing <> 1 -<dtml-if processing_node> AND processing_node = <dtml-sqlvar processing_node type="int"></dtml-if> -<dtml-if priority> AND priority = <dtml-sqlvar priority type="int"> </dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_readMessageList.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_readMessageList.zsql deleted file mode 100755 index 799843b64df2bb0197e4b621a7d499cc7707e7cb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_readMessageList.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -method_id -processing_node -priority</params> -SELECT * FROM - message_queue -WHERE - processing <> 1 -<dtml-if processing_node>AND processing_node = <dtml-sqlvar processing_node type="int"> </dtml-if> -<dtml-if priority>AND priority = <dtml-sqlvar priority type="int"> </dtml-if> -<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if> -<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if> diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_setPriority.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_setPriority.zsql deleted file mode 100755 index fe903eaa6fece6daee3d4c528609627666059154..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_setPriority.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid -priority</params> -UPDATE - message_queue -SET - priority = <dtml-sqlvar priority type="int">, - processing = 0 -WHERE - uid = <dtml-sqlvar uid type="int"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SQLQueue_writeMessage.zsql b/product/Coramy/skins/coramy_erp5/SQLQueue_writeMessage.zsql deleted file mode 100755 index 4975c7ebd3fe9131ff78567fd76779e67dff34a0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SQLQueue_writeMessage.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>path -method_id -message -priority</params> -INSERT INTO message_queue -SET - path = <dtml-sqlvar path type="string">, - method_id = <dtml-sqlvar method_id type="string">, - processing_node = -1, - processing = -1, - priority = <dtml-sqlvar priority type="int">, - message = <dtml-sqlvar message type="string"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/SimulationTool_zGetSortedInventoryList.zsql b/product/Coramy/skins/coramy_erp5/SimulationTool_zGetSortedInventoryList.zsql deleted file mode 100755 index 7380952c2d2221d3a1bc5c9d9887c668311c3bb8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/SimulationTool_zGetSortedInventoryList.zsql +++ /dev/null @@ -1,19 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - catalog.* -FROM - catalog LEFT JOIN movement ON(catalog.uid=movement.uid) -WHERE - catalog.portal_type = "Inventory MP" -OR catalog.portal_type = "Inventory PF" -ORDER BY - movement.start_date \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/Variated_getColorisList.py b/product/Coramy/skins/coramy_erp5/Variated_getColorisList.py deleted file mode 100755 index 6961cf2a9dfdc4562c99d2583522bd3cfdf3405f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Variated_getColorisList.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "Variated_getColorisList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -coloris_list = context.getColorisList() -coloris_coramy = [] -coloris_client = [] -for coloris in coloris_list : - coloris_items = coloris.split('/') - coloris_coramy.append(coloris_items[len(coloris_items)-1]) - - try : - coloris_object = context.restrictedTraverse('/'.join(coloris_items[0:len(coloris_items)])) - except : - coloris_object = None - - if coloris_object is not None : - if not coloris_object.getDestinationReference() in (None,'',' ') : - coloris_client.append(coloris_object.getDestinationReference()) - else : - coloris_client.append(coloris_items[len(coloris_items)-1]) - else : - coloris_client.append(coloris_items[len(coloris_items)-1]) - -coloris = [coloris_coramy, coloris_client, coloris_list] -return coloris diff --git a/product/Coramy/skins/coramy_erp5/Variated_getTailleClient.py b/product/Coramy/skins/coramy_erp5/Variated_getTailleClient.py deleted file mode 100755 index 63986538f8033dd6034f959db6188e0db644b05c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Variated_getTailleClient.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "Variated_getTailleClient" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -cartesian_variation_list = context.Resource_getCartesianVariationList() -taille_client_dict = context.Variated_getTailleClientDict() -taille = context.getTaille() - -try : - taille_client = taille_client_dict[str(cartesian_variation_list[0])] -except : - taille_items = taille.split('/') - taille_client = taille_items[len(taille_items)-1] - -return taille_client diff --git a/product/Coramy/skins/coramy_erp5/Variated_getTailleClientDict.py b/product/Coramy/skins/coramy_erp5/Variated_getTailleClientDict.py deleted file mode 100755 index 531e8b954aa99df289aea358530e27c2e8f2c24e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Variated_getTailleClientDict.py +++ /dev/null @@ -1,34 +0,0 @@ -## Script (Python) "Variated_getTailleClientDict" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# return a dictionary -# key : cartesian_variation_list -# item : taille client - -try : - correspondance = context.getResourceValue().getSpecialiseValue(portal_type=['Correspondance Tailles']) -except : - correspondance = None - -taille_list = context.getTailleList() -cartesian_variation_list = context.Resource_getCartesianVariationList() -taille_client_dict = {} - -for variation_list in cartesian_variation_list : - mapped_value_list = correspondance.objectValues() - taille_found = 0 - for mapped_value in mapped_value_list : - if mapped_value.test(correspondance.asContext(categories=variation_list)) : - taille_client_dict[str(variation_list)] = mapped_value.getProperty(key='taille_client') - taille_found =1 - break - if not taille_found : - taille_client_dict[str(variation_list)] = '' - -return taille_client_dict diff --git a/product/Coramy/skins/coramy_erp5/Variated_getTailleList.py b/product/Coramy/skins/coramy_erp5/Variated_getTailleList.py deleted file mode 100755 index 362c859c1009cca9839dc7eeb75864cbad1139db..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Variated_getTailleList.py +++ /dev/null @@ -1,35 +0,0 @@ -## Script (Python) "Variated_getTailleList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=correspondance=None, morphologie=None -##title= -## -tailles_list = context.getTailleList() -tailles_coramy = [] -tailles_client = [] -for taille in tailles_list : - taille_items = taille.split('/') - tailles_coramy.append(taille_items[len(taille_items)-1]) - -if correspondance == None : - tailles_client = tailles_coramy -else : - if morphologie is None : - for taille in tailles_list : - if correspondance.getCell(None, taille, base_id='taille_client') <> None : - tailles_client.append(correspondance.getCell(None, taille, base_id='taille_client').taille_client) - else : - tailles_client.append("") - else : - my_morphologie = context.restrictedTraverse(morphologie).getMorphoType() - for taille in tailles_list : - if correspondance.getCell(my_morphologie, taille, base_id='taille_client') <> None : - tailles_client.append(correspondance.getCell(my_morphologie, taille, base_id='taille_client').taille_client) - else : - tailles_client.append("") - -tailles = [tailles_coramy, tailles_client, tailles_list] -return tailles diff --git a/product/Coramy/skins/coramy_erp5/Variated_getTaillesList.py b/product/Coramy/skins/coramy_erp5/Variated_getTaillesList.py deleted file mode 100755 index e0739c26f9d3707cc4a00f7016c4aae4b5d50aad..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/Variated_getTaillesList.py +++ /dev/null @@ -1,27 +0,0 @@ -## Script (Python) "Variated_getTaillesList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=correspondance=None -##title= -## -tailles_list = context.getTailleList() -tailles_coramy = [] -tailles_client = [] -for taille in tailles_list : - taille_items = taille.split('/') - tailles_coramy.append(taille_items[len(taille_items)-1]) - -if correspondance == None : - tailles_client = tailles_coramy -else : - for taille in tailles_list : - if correspondance.getCell(None, taille, base_id='taille_client') <> None : - tailles_client.append(correspondance.getCell(None, taille, base_id='taille_client').taille_client) - else : - tailles_client.append("") - -tailles = [tailles_coramy, tailles_client, tailles_list] -return tailles diff --git a/product/Coramy/skins/coramy_erp5/asPDF.py b/product/Coramy/skins/coramy_erp5/asPDF.py deleted file mode 100755 index bd39a674cd977e5efd0776bf9b2521e32cfcf49d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/asPDF.py +++ /dev/null @@ -1,34 +0,0 @@ -## Script (Python) "asPDF" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title=Traveral helper to render report -## -request = context.REQUEST - -if len(traverse_subpath) >= 2: - templatename = traverse_subpath[0] - documentname = traverse_subpath[1] - if len(traverse_subpath) >= 3: - resultname = traverse_subpath[2] - else: - resultname = context.id + '.pdf' - - report_tool = context.portal_report - doc_txt = getattr(context,documentname,None) - - if doc_txt: - doc_xml = context.testdocument_pdf(pdftemplate=templatename) - pdf = report_tool.renderPDF(templatename,doc_xml) - - request.RESPONSE.setHeader('Content-Type','application/pdf') - request.RESPONSE.setHeader('Content-Length',len(pdf)) - request.RESPONSE.setHeader('Content-Disposition','inline;filename=Myfile.pdf') - - return pdf - -url = '%s/%s?%s' % (context.portal_url(),'index_html','portal_status_message=error+using+asPDF.') -return request.RESPONSE.redirect(url) diff --git a/product/Coramy/skins/coramy_erp5/assign_gestionaire_designe_roles.py b/product/Coramy/skins/coramy_erp5/assign_gestionaire_designe_roles.py deleted file mode 100755 index a246b44f6c3e42e9b08f2f4917e335db32c804c7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/assign_gestionaire_designe_roles.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "assign_gestionaire_designe_roles" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name='' -##title= -## -object = context - -equipe1=['Michele_Kmiecik', 'Laurence_Caron', 'Veronique_Tronet'] -equipe2=['Martine_Cirot', 'Michele_Grisolet'] -equipe3=['Maryvonne_Mathon', 'Magdalena_Cousin', 'Carole_Billant'] - -local_user = object.portal_membership.getAuthenticatedMember().getUserName() - -if user_name <> '' : - if user_name in equipe1 or user_name in equipe2 or user_name in equipe3 : - local_user = user_name - -if local_user in equipe1 : - object.AssignLocalRole(user_list=equipe1,role_list=['GestionaireDesigne',]) -elif local_user in equipe2 : - object.AssignLocalRole(user_list=equipe2,role_list=['GestionaireDesigne',]) -elif local_user in equipe3 : - object.AssignLocalRole(user_list=equipe3,role_list=['GestionaireDesigne',]) -else : - if user_name == "AnimatriceAppros" : - local_user = 'Michele_Kmiecik' - object.AssignLocalRole(user_list=[local_user,],role_list=['GestionaireDesigne',]) diff --git a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action.form b/product/Coramy/skins/coramy_erp5/base_folder_workflow_action.form deleted file mode 100755 index 4371529c899261bbb47c34fac3d741436b79f914..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action.form +++ /dev/null @@ -1,118 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Validate</title> - <row_length>4</row_length> - <name>base_folder_workflow_action</name> - <pt>form_view_dialog</pt> - <action>folder_workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_workflow_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date.form b/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date.form deleted file mode 100755 index 93420e9339908421605affd8f8ff00696afea55d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date.form +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Validate</title> - <name>base_folder_workflow_action</name> - <action>folder_workflow_status_modify</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_workflow_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date2.form b/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date2.form deleted file mode 100755 index e5967193447e88052a7f8009231b7d80179af2f1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/base_folder_workflow_action_start_date2.form +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Validate</title> - <name>base_folder_workflow_action</name> - <action>folder_workflow_status_modify_test</action> - <enctype>multipart/form-data</enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_workflow_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/base_workflow_action.form b/product/Coramy/skins/coramy_erp5/base_workflow_action.form deleted file mode 100755 index 1aa5a4ad340223df622baa00a6aaaa5eb6cce5cb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/base_workflow_action.form +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Validate</title> - <row_length>4</row_length> - <name>base_workflow_action</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/base_workflow_action_comment.form b/product/Coramy/skins/coramy_erp5/base_workflow_action_comment.form deleted file mode 100755 index 61a5ea983eb98b5fcf76fcf5dbeafce2d91d89a7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/base_workflow_action_comment.form +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Validate</title> - <row_length>4</row_length> - <name>base_workflow_action_comment</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/content_viewMetadata.form b/product/Coramy/skins/coramy_erp5/content_viewMetadata.form deleted file mode 100755 index b0dc8f89cc6eb5abcac2a33ec3647779d4b7a470..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/content_viewMetadata.form +++ /dev/null @@ -1,94 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>content_viewMetadata</name> - <pt>form_view</pt> - <action>content_MetadataEdit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/title</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/copy_of_base_folder_workflow_action_start_date.form b/product/Coramy/skins/coramy_erp5/copy_of_base_folder_workflow_action_start_date.form deleted file mode 100755 index 93420e9339908421605affd8f8ff00696afea55d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/copy_of_base_folder_workflow_action_start_date.form +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Validate</title> - <name>base_folder_workflow_action</name> - <action>folder_workflow_status_modify</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_workflow_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.workflow_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/create_relation_dialog.form b/product/Coramy/skins/coramy_erp5/create_relation_dialog.form deleted file mode 100755 index a9833ab67dffdb71f301b21c46dbd3b94dc1109d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/create_relation_dialog.form +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Create New Document(s)</title> - <row_length>4</row_length> - <name>create_relation_dialog</name> - <pt>form_create_relation_dialog</pt> - <action>base_create_relation</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>relation_values</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>relation_values</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/document_view.form b/product/Coramy/skins/coramy_erp5/document_view.form deleted file mode 100755 index 5b375777af7eee9deccfc608478319a8a55884ce..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/document_view.form +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>document_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_text_content</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Text</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getTextContent</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/domain_view.form b/product/Coramy/skins/coramy_erp5/domain_view.form deleted file mode 100755 index c1c79109ae2505781a8d2709716db118efd591aa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/domain_view.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>domain_view</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype>None</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_domain_parameter</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('=', '='), ('!=', '!='), ('LIKE', 'LIKE'), ('>', '>'), ('>=', '>='), ('<', '<'), ('<=', '<='), ('IN', 'IN')]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>my_domain_parameter</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/getBaseCategoryIds</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_domain_operator</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('=', '='), ('!=', '!='), ('LIKE', 'LIKE'), ('>', '>'), ('>=', '>='), ('<', '<'), ('<=', '<='), ('INTERSECTS', 'INTERSECTS'), ('SUPERSET_OF', 'SUPERSET_OF'), ('SUBSET_OF', 'SUBSET_OF')]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>my_domain_operator</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_domain_values</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>my_domain_values</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/file_view.form b/product/Coramy/skins/coramy_erp5/file_view.form deleted file mode 100755 index 6a24f737495975bfafb968a32ff1fe0d2afe38b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/file_view.form +++ /dev/null @@ -1,144 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Edit</title> - <row_length>4</row_length> - <name>file_edit</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>my_file</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>description</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>my_description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getDescription</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/folder_contents.form b/product/Coramy/skins/coramy_erp5/folder_contents.form deleted file mode 100755 index b9af2f3e6e8c318aa4dffc1215eb9b92381d2f8d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_contents.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Folder Contents</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('Title', 'Title'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>FOLDER_LIST</list_cookie> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>folders</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Elements contenus</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/folder_delete_view.form b/product/Coramy/skins/coramy_erp5/folder_delete_view.form deleted file mode 100755 index 8ec6172dedd3b4eefa454a63b7ef3dc11a09c34e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_delete_view.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Supprimer les objets</title> - <row_length>4</row_length> - <name>folder_delete_view</name> - <pt>form_folder_delete</pt> - <action>folder_delete</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('portal_type', 'Type'), ('Title', 'Titre'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('portal_type', 'Type'), ('Title', 'Titre'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('relative_url', "''"), ('portal_type', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_cookie>SEARCH_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>folder_delete_selection</selection_name> - <sort type="list">[('relative_url', 'relative_url')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Résultats</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/folder_sort_on.form b/product/Coramy/skins/coramy_erp5/folder_sort_on.form deleted file mode 100755 index 04d3c045b54f852467fc24e1e09b43bd9e94bbc0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_sort_on.form +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Define Sort Order</title> - <row_length>4</row_length> - <name>folder_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_on</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('None', 'None'), ('Title', 'Title'), ('Id', 'id'), ('Description', 'description')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Sort Parameter</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/folder_view2.form b/product/Coramy/skins/coramy_erp5/folder_view2.form deleted file mode 100755 index c1415fb955343aeb2359c32b8fee5ab5e6065ff8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_view2.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>organisation_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>contact_list</id> <type>ListBox</type> - <values> - <all_columns></all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('Title', 'Title'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('Title', "''"), ('Description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes></global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action></list_action> - <list_cookie>ORGANISATION_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[('ERP5 Telephone', 'ERP5 Telephone'), ('Document', 'Document'), ('Base18 Document', 'Base18 Document')]</meta_types> - <portal_types></portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select></select> - <selection_name></selection_name> - <sort></sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contacts</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify.py b/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify.py deleted file mode 100755 index 3cce15d2b3294de27ffb85f2ea38e45cca9f3bf6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify.py +++ /dev/null @@ -1,78 +0,0 @@ -## Script (Python) "folder_workflow_status_modify" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,selection_name -##title= -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -request=context.REQUEST -error_message = '' - -try: - # Validate the form - form = getattr(context,dialog_id) - form.validate_all_to_request(request) - kw = {} - for f in form.get_fields(): - k = f.id - k = k[3:] - v = getattr(request,k,None) - if v is not None: - kw[k] = v - selection_list = context.portal_selections.callSelectionFor(selection_name, context=context) - for selection_item in selection_list: - o = selection_item.getObject() - workflow_action = kw['workflow_action'] - action_list = o.portal_workflow.getActionsFor(o) - action_list = filter(lambda x:x.has_key('id'), action_list ) - action_id_list = map(lambda x:x['id'], action_list) - # If the user is not allowed to do this transition, it will not be in action_list - if workflow_action in action_id_list: - o.portal_workflow.doActionFor( - o, - workflow_action, - wf_id=kw['workflow_id'], - **kw) - - # We will check if there's an error_message - history_data = None - try: - history_data = o.portal_workflow.getInfoFor(ob=o, name='history') - except: - pass - redirect_url = None - if history_data is not None: - last_history_data = history_data[len(history_data)-1] - this_error = last_history_data.get('error_message') - if this_error != None and this_error != '': - error_message += this_error + "-" - -except FormValidationError, validation_errors: - # Pack errors into the request - field_errors = form.ErrorFields(validation_errors) - request.set('field_errors', field_errors) - return form(request) -except ValueError, value_error: - # Pack errors into the request - redirect_url = '%s/%s?%s%s' % ( context.absolute_url(), form_id - , 'portal_status_message=',value_error - ) - - context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) -else: - - if error_message != None and error_message != '': - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s' % error_message - ) - pass - if redirect_url is None: - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Status+changed.' - ) - - context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify_test.py b/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify_test.py deleted file mode 100755 index 6d96c1f0d4631aef543ac1c5656f55cbe51adaf5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/folder_workflow_status_modify_test.py +++ /dev/null @@ -1,80 +0,0 @@ -## Script (Python) "folder_workflow_status_modify_test" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,selection_name -##title= -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -request=context.REQUEST -error_message = '' - -return context.REQUEST - -try: - # Validate the form - form = getattr(context,dialog_id) - form.validate_all_to_request(request) - kw = {} - for f in form.get_fields(): - k = f.id - k = k[3:] - v = getattr(request,k,None) - if v is not None: - kw[k] = v - selection_list = context.portal_selections.callSelectionFor(selection_name, context=context) - for selection_item in selection_list: - o = selection_item.getObject() - workflow_action = kw['workflow_action'] - action_list = o.portal_workflow.getActionsFor(o) - action_list = filter(lambda x:x.has_key('id'), action_list ) - action_id_list = map(lambda x:x['id'], action_list) - # If the user is not allowed to do this transition, it will not be in action_list - if workflow_action in action_id_list: - o.portal_workflow.doActionFor( - o, - workflow_action, - wf_id=kw['workflow_id'], - **kw) - - # We will check if there's an error_message - history_data = None - try: - history_data = o.portal_workflow.getInfoFor(ob=o, name='history') - except: - pass - redirect_url = None - if history_data is not None: - last_history_data = history_data[len(history_data)-1] - this_error = last_history_data.get('error_message') - if this_error != None and this_error != '': - error_message += this_error + "-" - -except FormValidationError, validation_errors: - # Pack errors into the request - field_errors = form.ErrorFields(validation_errors) - request.set('field_errors', field_errors) - return form(request) -except ValueError, value_error: - # Pack errors into the request - redirect_url = '%s/%s?%s%s' % ( context.absolute_url(), form_id - , 'portal_status_message=',value_error - ) - - context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) -else: - - if error_message != None and error_message != '': - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s' % error_message - ) - pass - if redirect_url is None: - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Status+changed.' - ) - - context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_erp5/form_DefaultRender.pt b/product/Coramy/skins/coramy_erp5/form_DefaultRender.pt deleted file mode 100755 index 400356841127dcd0aaea8865a60278e6c71083b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/form_DefaultRender.pt +++ /dev/null @@ -1,19 +0,0 @@ -<html> - <head> - <title tal:content="template/title">The title</title> - </head> - <body> - - <h2><span tal:replace="here/title_or_id">content title or id</span> - <span tal:condition="template/title" - tal:replace="template/title">optional template id</span></h2> - - <span tal:replace="structure here/render" /> - - <p>Script: <span tal:replace="python: template" /></p> - <p>Here: <span tal:replace="python: here" /></p> - <p>Context: <span tal:replace="python: request" /></p> - - This is Page Template <em tal:content="template/id">template id</em>. - </body> -</html> diff --git a/product/Coramy/skins/coramy_erp5/getIntId.py b/product/Coramy/skins/coramy_erp5/getIntId.py deleted file mode 100755 index be41ca66821260dbe604f5738c50911095a5a82e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/getIntId.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "getIntId" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - result = int(context.getId()) -except: - result = 0 - -return result diff --git a/product/Coramy/skins/coramy_erp5/identify_category.py b/product/Coramy/skins/coramy_erp5/identify_category.py deleted file mode 100755 index 31c9cc2ca0b5481fd32eb076330bd63d4d6a6cd4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/identify_category.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "identify_category" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category='', category='' -##title= -## -# returns the uid of the category object -# according to the given base_category string and category string - -category_items = category.split("/") -category_object = context.portal_categories[base_category] - -for item in category_items : - category_object=category_object[item] - -return category_object.uid diff --git a/product/Coramy/skins/coramy_erp5/image_large_view.form b/product/Coramy/skins/coramy_erp5/image_large_view.form deleted file mode 100755 index 106ef86f051c8932ea45a25b9a94f3a1285db849..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/image_large_view.form +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Image</title> - <row_length>4</row_length> - <name>large_image_view_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>medium</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">200</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/image_view.form b/product/Coramy/skins/coramy_erp5/image_view.form deleted file mode 100755 index eff6a59bcf4e14086985086fa5f4af7a6f49b8b6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/image_view.form +++ /dev/null @@ -1,177 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Edit</title> - <row_length>4</row_length> - <name>file_edit</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getId</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpeg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title>image</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>my_file</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>description</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>my_description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getDescription</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/new_ean13_code.py b/product/Coramy/skins/coramy_erp5/new_ean13_code.py deleted file mode 100755 index 34f05efa6035fd1dbe53f192632a94de4ecc694f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/new_ean13_code.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "new_ean13_code" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=country='', CNUF='', CIP=0 -##title= -## -# this script returns a complete EAN13 Code including key -# the parameters are -# country (string 1 car): country code -# CNUF (string 5 to 8 car): Code National Unifié Fabricant -# CIP (int): Code Interface Produit - -# ean_code = first_part (country+CNUF) + second_part (formatted CIF) + key - -ean_code = '' -fisrt_part ='' -second_part = '' -key = '' - -if len(country)==1 and len(CNUF)>=5 and len(CNUF)<=8 : - first_part = country + CNUF - second_part = '0'*(12-len(first_part)-len(str(CIP)))+str(CIP) - ean_code = first_part + second_part - -# compute the key - num_key = 0 - for i in range(6) : - num_key += int(ean_code[i*2]) - num_key += int(ean_code[i*2-1])*3 - - if divmod(num_key,10)[1] == 0 : - key = '0' - else : - key = str((divmod(num_key,10)[0]+1)*10-num_key) - -ean_code += key - -return ean_code diff --git a/product/Coramy/skins/coramy_erp5/object_action_list.py b/product/Coramy/skins/coramy_erp5/object_action_list.py deleted file mode 100755 index f3588708af820f61c78aa926e55757675ad48816..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/object_action_list.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "object_action_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=selection_name='', max_nb=0 -##title= -## -# Retourne une liste d'objet correspondant à un selection -# si appelé sur un ERP5 Folder -# Retourne une liste à un seul objet (context) -# si appelé sur autre chose -# utile pour effectuer des actions (impression,...) -# que l'on souhaite appeler depuis une liste ou depuis un formulaire détaillé - -object_list = [] -request = context.REQUEST -if context.getMetaType() == 'ERP5 Folder' : - selection = context.portal_selections.getSelectionFor(selection_name,REQUEST=context.REQUEST) - object_list = map((lambda x:x.getObject()),selection(context=context)) -else : - object_list.append(context) - -# limitation du nombre d'objets en sortie -if max_nb <> 0 : - if len(object_list) > max_nb : - object_list = modele_list[0:max_nb] - -return object_list diff --git a/product/Coramy/skins/coramy_erp5/search_related.zsql b/product/Coramy/skins/coramy_erp5/search_related.zsql deleted file mode 100755 index 47543892912e49f2c0aca466e00d6c18329f8675..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/search_related.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>category_uid</params> -SELECT DISTINCT - catalog.uid, catalog.path -FROM - catalog, category -WHERE - catalog.uid = category.uid -AND category.category_uid = <dtml-sqlvar category_uid type="int"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_erp5/sort_object_list.py b/product/Coramy/skins/coramy_erp5/sort_object_list.py deleted file mode 100755 index 9e0dad089a3c37399325105300aa86cc6a6d4b8b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_erp5/sort_object_list.py +++ /dev/null @@ -1,27 +0,0 @@ -## Script (Python) "sort_object_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=unordered_list=[], sort_order=() -##title= -## -# This script sorts the given list of objects - -def generic_sort(a,b): - result = 0 - for k,v in sort_order: - a_value = a.getProperty(k) - b_value = b.getProperty(k) - result = cmp(a_value,b_value) - if result: - if v in ('DESC', 'desc', 'descending', 'reverse'): - return -result - else: - return result - return result - -#unordered_list = map(lambda x: x.getObject(), unordered_list) -unordered_list.sort(generic_sort) -return unordered_list diff --git a/product/Coramy/skins/coramy_list_method/Delivery_zSearchResource.zsql b/product/Coramy/skins/coramy_list_method/Delivery_zSearchResource.zsql deleted file mode 100755 index e83d41e55055e2ebab6760235c3c487bd83b3505..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/Delivery_zSearchResource.zsql +++ /dev/null @@ -1,65 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>resource_id_list="" -variante_id_list="" -sort_on -portal_type</params> -SELECT DISTINCT catalog.id, catalog.uid, catalog.relative_url, catalog.path, catalog.Description, catalog.simulation_state, catalog.default_destination_title -FROM catalog, catalog AS line -<dtml-if expr="_.len(resource_id_list)>0"> -, catalog AS resource -, category AS cat1 -</dtml-if> -<dtml-if expr="_.len(variante_id_list)>0"> -, catalog as variante -, category AS cat2 -</dtml-if> - -WHERE line.parent_uid = catalog.uid - -<dtml-if expr="_.len(portal_type)>0"> -AND ( catalog.portal_type = "<dtml-var expr="portal_type[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(portal_type)-1)"> -OR catalog.portal_type = "<dtml-var expr="portal_type[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(resource_id_list)>0"> -AND ( resource.id LIKE "<dtml-var expr="resource_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(resource_id_list)-1)"> -OR resource.id LIKE "<dtml-var expr="resource_id_list[loop_item+1]">" -</dtml-in> -) -AND cat1.uid=line.uid -AND cat1.category_uid=resource.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> -</dtml-if> - -<dtml-if expr="_.len(variante_id_list)>0"> -AND ( variante.id LIKE "<dtml-var expr="variante_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(variante_id_list)-1)"> -OR variante.id LIKE "<dtml-var expr="variante_id_list[loop_item+1]">" -</dtml-in> -) -AND ( -( cat2.uid=line.uid -AND cat2.category_uid=variante.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.coloris.uid">) -OR -( cat2.uid=line.uid -AND cat2.category_uid=variante.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.variante.uid">) -) -</dtml-if> - -<dtml-if sort_on> -ORDER BY <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/Organisation_zDefaultSearch.zsql b/product/Coramy/skins/coramy_list_method/Organisation_zDefaultSearch.zsql deleted file mode 100755 index 319625fa857af0d31d37933debc8caaf810d1e23..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/Organisation_zDefaultSearch.zsql +++ /dev/null @@ -1,36 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>organisation_id_list -group_list</params> -SELECT DISTINCT organisation.id, organisation.relative_url, organisation.path, organisation.title -FROM catalog AS organisation -<dtml-if group_list> -, category AS cat1 -</dtml-if> - -WHERE organisation.portal_type = "Organisation" - -<dtml-if organisation_id_list> -AND ( organisation.id = "<dtml-var expr="organisation_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(organisation_id_list)-1)"> -OR organisation.id = "<dtml-var expr="organisation_id_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if group_list> -AND cat1.uid=organisation.uid -AND ( cat1.category_uid=<dtml-var expr="identify_category(base_category='group',category=group_list[0])"> -<dtml-in prefix="loop" expr="_.range(_.len(group_list)-1)"> -OR cat1.category_uid=<dtml-var expr="identify_category(base_category='cgroup',category=group_list[loop_item+1])"> -</dtml-in> -) -AND cat1.base_category_uid=<dtml-var "portal_categories.group.uid"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTisse_zTest3.zsql b/product/Coramy/skins/coramy_list_method/PieceTisse_zTest3.zsql deleted file mode 100755 index a54089cd8588c32135c8ebec9533bc415ecd60ea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTisse_zTest3.zsql +++ /dev/null @@ -1,27 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT - item.id, stock.uid, stock.quantity, category.uid as cat_uid -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0 -) - -WHERE item.portal_type = "Piece Tissu" -AND item.id = "41347" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_searchConsumedList.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_searchConsumedList.zsql deleted file mode 100755 index 6ea26874181dc866462b54677c72e150446b3fd3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_searchConsumedList.zsql +++ /dev/null @@ -1,29 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:100000 -max_cache:10 -cache_time:60 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT DISTINCT - distinct item.uid -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid) - -LEFT JOIN movement -ON (movement.uid = category.uid) - -WHERE item.portal_type = "Piece Tissu" -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0 -AND movement.inventory IS NULL \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_searchRemainingList.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_searchRemainingList.zsql deleted file mode 100755 index a69187f37f60ce117b6149de377fd4940eaec0bd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_searchRemainingList.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:500 -max_cache:100 -cache_time:60 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - * -FROM - catalog -WHERE -portal_type = "Piece Tissu" -<dtml-in PieceTissu_searchConsumedList>AND uid <> <dtml-sqlvar uid type="int"> -</dtml-in> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_test5.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_test5.zsql deleted file mode 100755 index d3c24f60b9e370aad3a9dfef1dca372a53ce6f5f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_test5.zsql +++ /dev/null @@ -1,33 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT DISTINCT - count(distinct item.uid) -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN movement -ON (movement.uid = category.uid) - -LEFT JOIN catalog AS delivery -ON (delivery.uid = movement.delivery_uid) - -LEFT JOIN stock -ON (stock.uid = category.uid -AND ((stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0) -OR (delivery.portal_type <> "Production Packing List" AND delivery.portal_type <> "Movement MP" ))) - -WHERE item.portal_type = "Piece Tissu" -AND stock.uid IS NULL \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList.zsql deleted file mode 100755 index ecf7af6c2f2e5eb7608d6730da8114d660052de2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList.zsql +++ /dev/null @@ -1,91 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>sort_on -resource_id_list="" -variante_id_list="" -id -default_source_title -default_source_reference</params> -SELECT DISTINCT - item.uid, item.id, item.path, item.Description, item.simulation_state, item.default_destination_title -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid) - -LEFT JOIN movement -ON (movement.uid = category.uid) - -LEFT JOIN movement AS next_movement -ON (next_movement.resource_uid = movement.resource_uid -AND next_movement.variation_text = movement.variation_text -AND next_movement.start_date > movement.start_date -AND not (next_movement.inventory is NULL)) - -<dtml-if expr="_.len(resource_id_list)>0"> -, catalog AS resource -, category AS cat1 -</dtml-if> -<dtml-if expr="_.len(variante_id_list)>0"> -, catalog as variante -, category AS cat2 -</dtml-if> - -WHERE - item.portal_type = "Piece Tissu" -AND ( stock.uid is NULL -OR ( stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND ( stock.quantity >= 0 -OR (stock.quantity < 0 -AND not (movement.inventory is NULL) ) ) ) ) -<dtml-in PieceTissu_searchConsumedList>AND item.uid <> <dtml-sqlvar uid type="int"> -</dtml-in> -AND next_movement.uid is NULL - -<dtml-if expr="_.len(resource_id_list)>0"> -AND ( resource.id LIKE "<dtml-var expr="resource_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(resource_id_list)-1)"> -OR resource.id LIKE "<dtml-var expr="resource_id_list[loop_item+1]">" -</dtml-in> -) -AND cat1.uid=item.uid -AND cat1.category_uid=resource.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> -</dtml-if> - -<dtml-if expr="_.len(variante_id_list)>0"> -AND ( variante.id LIKE "<dtml-var expr="variante_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(variante_id_list)-1)"> -OR variante.id LIKE "<dtml-var expr="variante_id_list[loop_item+1]">" -</dtml-in> -) -AND cat2.uid=item.uid -AND cat2.category_uid=variante.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.coloris.uid"> -</dtml-if> - -<dtml-if id> -AND item.id LIKE <dtml-sqlvar id type="string"> -</dtml-if> -<dtml-if default_source_title> -AND item.default_source_title LIKE <dtml-sqlvar default_source_title type="string"> -</dtml-if> -<dtml-if default_source_reference> -AND item.default_source_reference LIKE <dtml-sqlvar default_source_reference type="string"> -</dtml-if> - -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList_OLD.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList_OLD.zsql deleted file mode 100755 index 4f4215e7c9997a1838cdc1973577201c073f1471..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_zGetAvailableItemList_OLD.zsql +++ /dev/null @@ -1,78 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>sort_on -resource_id_list="" -variante_id_list="" -id -default_source_title -default_source_reference</params> -SELECT DISTINCT - item.uid, item.id, item.path, item.Description, item.simulation_state, item.default_destination_title -FROM - catalog AS item -<dtml-if expr="_.len(resource_id_list)>0"> -, catalog AS resource -, category AS cat1 -</dtml-if> -<dtml-if expr="_.len(variante_id_list)>0"> -, catalog as variante -, category AS cat2 -</dtml-if> - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid) - -WHERE - item.portal_type = "Piece Tissu" - -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity > 0 -<dtml-in PieceTissu_searchConsumedList>AND item.uid <> <dtml-sqlvar uid type="int"> -</dtml-in> - -<dtml-if expr="_.len(resource_id_list)>0"> -AND ( resource.id LIKE "<dtml-var expr="resource_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(resource_id_list)-1)"> -OR resource.id LIKE "<dtml-var expr="resource_id_list[loop_item+1]">" -</dtml-in> -) -AND cat1.uid=item.uid -AND cat1.category_uid=resource.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> -</dtml-if> - -<dtml-if expr="_.len(variante_id_list)>0"> -AND ( variante.id LIKE "<dtml-var expr="variante_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(variante_id_list)-1)"> -OR variante.id LIKE "<dtml-var expr="variante_id_list[loop_item+1]">" -</dtml-in> -) -AND cat2.uid=item.uid -AND cat2.category_uid=variante.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.coloris.uid"> -</dtml-if> - -<dtml-if id> -AND item.id LIKE <dtml-sqlvar id type="string"> -</dtml-if> -<dtml-if default_source_title> -AND item.default_source_title LIKE <dtml-sqlvar default_source_title type="string"> -</dtml-if> -<dtml-if default_source_reference> -AND item.default_source_reference LIKE <dtml-sqlvar default_source_reference type="string"> -</dtml-if> - -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_zTest4.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_zTest4.zsql deleted file mode 100755 index 309a91719b8236a8f119c9484b89d0a29773141b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_zTest4.zsql +++ /dev/null @@ -1,28 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params></params> -SELECT DISTINCT - count(distinct item.uid) -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0) - - -WHERE item.portal_type = "Piece Tissu" -AND category.uid IS NULL -AND item.id = "41347" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList.zsql deleted file mode 100755 index 23029ad57ffafc8df7d2eb795e50416ce2445cc7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList.zsql +++ /dev/null @@ -1,52 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT - count(distinct item.uid) -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0) - -LEFT JOIN stock AS stock_catalog -ON (stock.uid = stock_catalog.uid) - -LEFT JOIN category AS other_category -ON (other_category.category_uid=item.uid -AND other_category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND other_category.uid <> category.uid) - -LEFT JOIN stock AS other_stock -ON (other_stock.uid = other_category.uid -AND NOT (other_stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND other_stock.quantity < 0)) - -LEFT JOIN category AS other_category2 -ON (other_category2.category_uid=item.uid -AND other_category2.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND other_category2.uid <> category.uid -AND other_category2.uid <> other_category.uid) - -LEFT JOIN stock AS other_stock2 -ON (other_stock2.uid = other_category.uid -AND NOT (other_stock2.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND other_stock2.quantity < 0)) - -WHERE item.portal_type = "Piece Tissu" -AND stock_catalog.uid IS NULL -AND other_stock.uid IS NULL -AND other_stock2.uid IS NULL diff --git a/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList2.zsql b/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList2.zsql deleted file mode 100755 index 0ac8c1722bbed56ee574643426591df3f0f10124..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PieceTissu_zTestAvailableItemList2.zsql +++ /dev/null @@ -1,49 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT - count(distinct item.uid) -FROM - catalog AS item - -LEFT JOIN category -ON (category.category_uid=item.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()">) - -LEFT JOIN stock -ON (stock.uid = category.uid -AND stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND stock.quantity < 0) - -LEFT JOIN category AS other_category -ON (other_category.category_uid=item.uid -AND other_category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND category.uid <> other_category.uid) - -LEFT JOIN stock AS other_stock -ON (other_stock.uid = other_category.uid -AND other_stock.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND other_stock.quantity < 0) - -LEFT JOIN category AS other_category2 -ON (other_category.category_uid=item.uid -AND other_category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND category.uid <> other_category2.uid -AND other_category.uid <> other_category2.uid) - -LEFT JOIN stock AS other_stock2 -ON (other_stock2.uid = other_category2.uid -AND other_stock2.node_uid = <dtml-var "portal_categories.site.Stock_MP.Gravelines.getUid()"> -AND other_stock2.quantity < 0) - -WHERE item.portal_type = "Piece Tissu" -AND stock.uid IS NULL -AND other_stock.uid IS NULL -AND other_stock2.uid IS NULL diff --git a/product/Coramy/skins/coramy_list_method/PurchaseOrder_zGetOrderableResourceList.zsql b/product/Coramy/skins/coramy_list_method/PurchaseOrder_zGetOrderableResourceList.zsql deleted file mode 100755 index 71732f8a34c6cbd0ce3cf530007d6b084d55b3ab..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/PurchaseOrder_zGetOrderableResourceList.zsql +++ /dev/null @@ -1,56 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>simulation_state:list -target_start_date -target_stop_date -query -node_title -resource_title -variation_text -sort_on -resource_tree</params> -SELECT - SUM(movement.target_quantity) as target_quantity, - movement.variation_text AS variation_text, - node.title AS node_title, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.target_start_date AS target_start_date, - movement.target_stop_date AS target_stop_date - <dtml-if query>, <dtml-sqlvar query type="string"> AS query </dtml-if> -FROM - catalog, movement, catalog AS resource, catalog AS node, catalog AS delivery <dtml-if query>, category </dtml-if> -WHERE - catalog.uid = movement.uid -AND movement.has_cell_content = 0 -AND node.uid = movement.source_uid -AND movement.delivery_uid = delivery.uid -AND movement.target_quantity <> 0.0 -AND delivery.portal_type = "Purchase Order" -AND movement.resource_uid = resource.uid -<dtml-if simulation_state> AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if target_start_date> AND movement.target_start_date < <dtml-sqlvar target_start_date type="string"> -</dtml-if><dtml-if target_stop_date> AND movement.target_stop_date < <dtml-sqlvar target_stop_date type="string"> -</dtml-if><dtml-if query> AND <dtml-if resource_tree>resource.uid = category.uid <dtml-else>movement.destination_uid = category.uid </dtml-if> -AND <dtml-var query> -</dtml-if><dtml-if node_title>AND node.title LIKE '%<dtml-var node_title>%' -</dtml-if><dtml-if resource_title>AND resource.title LIKE '%<dtml-var resource_title>%' -</dtml-if><dtml-if variation_text>AND variation_text LIKE '%<dtml-var variation_text>%' -</dtml-if> -GROUP BY - movement.resource_uid, movement.variation_text -<dtml-if sort_on> -ORDER BY - <dtml-var sort_on> -<dtml-else> -ORDER BY - movement.target_stop_date -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/Resource_zGetAggregateList.zsql b/product/Coramy/skins/coramy_list_method/Resource_zGetAggregateList.zsql deleted file mode 100755 index 63b05745f84ad118df31adf10a334badc0fde569..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/Resource_zGetAggregateList.zsql +++ /dev/null @@ -1,29 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:750 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>explanation_uid -node_uid -section_uid -variation_text -resource_uid</params> -SELECT - catalog.* -FROM - catalog, movement, category, stock -WHERE - movement.uid = category.uid -AND category.category_uid = catalog.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.getUid()"> -AND stock.uid = movement.uid -AND movement.is_accountable = 1 -AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -AND movement.delivery_uid = <dtml-sqlvar explanation_uid type="int"> -AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -AND stock.section_uid = <dtml-sqlvar section_uid type="int"> diff --git a/product/Coramy/skins/coramy_list_method/SalesOrder_zSearchByClientGroup.zsql b/product/Coramy/skins/coramy_list_method/SalesOrder_zSearchByClientGroup.zsql deleted file mode 100755 index ca06d4b5cd012a492d5b7ed7c26fdf8aff77b2c8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/SalesOrder_zSearchByClientGroup.zsql +++ /dev/null @@ -1,51 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>state_list="" -group_list="" -sort_on</params> -SELECT DISTINCT catalog.id, catalog.uid, catalog.relative_url, catalog.path, catalog.Description, catalog.simulation_state, catalog.default_destination_title -FROM catalog -<dtml-if expr="_.len(group_list)>0 and not ('' in group_list)"> -, catalog AS organigramme -, category AS cat1 -</dtml-if> -<dtml-if expr="_.len(group_list)>0 and '' in group_list"> -LEFT JOIN category AS cat2 ON (cat2.uid=catalog.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.group.uid">) -</dtml-if> - -WHERE catalog.portal_type = "Sales Order" - -<dtml-if expr="_.len(group_list)>0 and not ('' in group_list)"> -AND ( organigramme.title LIKE "<dtml-var expr="group_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(group_list)-1)"> -OR organigramme.title LIKE "<dtml-var expr="group_list[loop_item+1]">" -</dtml-in> -) -AND cat1.uid=catalog.uid -AND cat1.category_uid=organigramme.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.group.uid"> -</dtml-if> - -<dtml-if expr="_.len(state_list)>0"> -AND ( catalog.simulation_state = "<dtml-var expr="state_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(state_list)-1)"> -OR catalog.simulation_state = "<dtml-var expr="state_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(group_list)>0 and '' in group_list"> -AND cat2.uid IS NULL -</dtml-if> - -<dtml-if sort_on> -ORDER BY <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_list_method/SalesPackingList_zSearchByClientGroup.zsql b/product/Coramy/skins/coramy_list_method/SalesPackingList_zSearchByClientGroup.zsql deleted file mode 100755 index ea9e7c6f8390d9df6ba71c4e80c4ce500ac92824..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_list_method/SalesPackingList_zSearchByClientGroup.zsql +++ /dev/null @@ -1,55 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>state_list="" -group_list="" -sort_on</params> -SELECT DISTINCT catalog.id, catalog.uid, catalog.relative_url, catalog.path, catalog.Description, catalog.simulation_state, catalog.default_destination_title -FROM catalog, catalog AS catalog_order, category AS category_order -<dtml-if expr="_.len(group_list)>0 and not ('' in group_list)"> -, catalog AS organigramme -, category AS cat1 -</dtml-if> - -<dtml-if expr="_.len(group_list)>0 and '' in group_list"> -LEFT JOIN category AS cat2 ON (cat2.uid=order_catalog.uid -AND cat2.base_category_uid=<dtml-var "portal_categories.group.uid">) -</dtml-if> - -WHERE catalog.portal_type = "Sales Packing List" -AND category_order.uid = catalog.uid -AND category_order.base_category_uid=<dtml-var "portal_categories.causality.uid"> -AND category_order.category_uid = catalog_order.uid -AND catalog_order.portal_type = "Sales Order" -<dtml-if expr="_.len(group_list)>0 and not ('' in group_list)"> -AND ( organigramme.title LIKE "<dtml-var expr="group_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(group_list)-1)"> -OR organigramme.title LIKE "<dtml-var expr="group_list[loop_item+1]">" -</dtml-in> -) -AND cat1.uid=catalog_order.uid -AND cat1.category_uid=organigramme.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.group.uid"> -</dtml-if> - -<dtml-if expr="_.len(state_list)>0"> -AND ( catalog.simulation_state = "<dtml-var expr="state_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(state_list)-1)"> -OR catalog.simulation_state = "<dtml-var expr="state_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(group_list)>0 and '' in group_list"> -AND cat2.uid IS NULL -</dtml-if> - -<dtml-if sort_on> -ORDER BY <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/PackingOrder_inventoryView.form b/product/Coramy/skins/coramy_manufacturing/PackingOrder_inventoryView.form deleted file mode 100755 index 691bd55fa38abb28f4feabc8dbe55222de65be27..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/PackingOrder_inventoryView.form +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Productions</title> - <name>ProductionOrder_inventoryView</name> - <action></action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('resource_relative_url', 'Composant'), ('variation_text', 'Variante'), ('quantity', 'Qt\xe9'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('getFutureInventory', 'Futur'), ('getQuantityUnit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/site/Stock_MP', 'Stocks MP'), ('portal_categories/site', 'Sites')]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">ProductionOrder_getAggregatedMaterialProductionList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>resource_current_inventory</selection_name> - <sort type="list">[]</sort> - <stat_method></stat_method> - <title>Productions</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/PackingOrder_list.form b/product/Coramy/skins/coramy_manufacturing/PackingOrder_list.form deleted file mode 100755 index d9134652d5c1d1dbdc57579eb8fa2b68bd3f8298..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/PackingOrder_list.form +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Liste des ordres de conditionnement</title> - <name>PackingOrder_list</name> - <action></action> - <enctype>multipart/form-data</enctype> - <method>POST</method> - <pt>form_list</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'OC'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Date livraison'), ('simulation_state', 'Etat'), ('discussion_state', 'Discussion')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'OC'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Date livraison'), ('simulation_state', 'Etat'), ('discussion_state', 'Discussion')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Packing Order', 'Packing Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>packing_order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <stat_method></stat_method> - <title>Ordres de conditionnement</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/PackingOrder_view.form b/product/Coramy/skins/coramy_manufacturing/PackingOrder_view.form deleted file mode 100755 index 8f61c64a5dfde094f889c458291304f18dd3f53b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/PackingOrder_view.form +++ /dev/null @@ -1,741 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Ordre de conditionnement</title> - <name>PackingOrder_view</name> - <action>base_edit</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ordre de fabrication</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_date_emission</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>OC émis le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_commande_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Support de l'OC</title> - </values> - <tales> - <items>here/portal_categories/commande_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit par</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person'), ('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Contact</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livrer à</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de coupe demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de coupe confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>discussion_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Discussion</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'discussion_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_trade_condition_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>condition_achat</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Condition Achat', 'Condition Achat')]</portal_type> - <required type="int">0</required> - <title>Condition d'achat</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_duration</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Durée totale</title> - </values> - <tales> - <title>python:'Durée totale (h) : %.2f' % here.ProductionOrder_getTotalDuration()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('ProductionOrderLine_getResourceState', 'Etat produit'), ('ProductionOrderLine_getResourceAccord', 'Accord technique'), ('ProductionOrderLine_getResourceInfosClient', 'Infos client'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('ProductionOrderLine_getResourceState', 'Etat produit'), ('ProductionOrderLine_getResourceAccord', 'Accord technique'), ('ProductionOrderLine_getResourceInfosClient', 'Infos client'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Packing Order Line', 'Packing Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>purchase_order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <stat_method></stat_method> - <title>Lignes d'OC</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix d'achat</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceAccord.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceAccord.py deleted file mode 100755 index 6d6cb03c12c0822d6eaccda67b110b868f7a6af6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceAccord.py +++ /dev/null @@ -1,21 +0,0 @@ -## Script (Python) "ProductionOrderLine_getResourceAccord" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try : - resource = context.getResourceValue() -except : - resource = None - -if resource is not None : - if context.portal_workflow.getInfoFor(resource, 'modele_state_accord_technique') == 'n' : - return 'Non' - else : - return 'Oui' -else : - return '' diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceInfosClient.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceInfosClient.py deleted file mode 100755 index 0c8813b6b5fb42a975767fe3e1ed807667646037..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceInfosClient.py +++ /dev/null @@ -1,21 +0,0 @@ -## Script (Python) "ProductionOrderLine_getResourceInfosClient" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try : - resource = context.getResourceValue() -except : - resource = None - -if resource is not None : - if context.portal_workflow.getInfoFor(resource, 'modele_state_infos_client') == 'n' : - return 'Non' - else : - return 'Oui' -else : - return '' diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceState.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceState.py deleted file mode 100755 index 49413ecf86447a859626550681ade2b6916a7139..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrderLine_getResourceState.py +++ /dev/null @@ -1,18 +0,0 @@ -## Script (Python) "ProductionOrderLine_getResourceState" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try : - resource = context.getResourceValue() -except : - resource = None - -if resource is not None : - return context.portal_workflow.getInfoFor(resource, 'modele_state') -else : - return '' diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedImmaterialConsumptionView.form b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedImmaterialConsumptionView.form deleted file mode 100755 index 6fa3548535425aa9889552239da1c3c244eefbd7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedImmaterialConsumptionView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Opérations</title> - <row_length>4</row_length> - <name>ProductionOrder_aggregatedImmaterialConsumptionView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>current_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_relative_url', 'Op\xe9ration'), ('variation_text', 'Variante'), ('quantity', 'Conso'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('inventory', 'Futur'), ('getQuantityUnit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>ProductionOrder_aggregatedMaterialConsumptionView</list_action> - <list_method type="method">ProductionOrder_getAggregatedImmaterialConsumptionList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>production_order_current_inventory_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Opérations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedMaterialConsumptionView.form b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedMaterialConsumptionView.form deleted file mode 100755 index 8574834b844b398654570ede3a7e412ae9b25baf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_aggregatedMaterialConsumptionView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Consommations</title> - <row_length>4</row_length> - <name>ProductionOrder_aggregatedMaterialConsumptionView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>current_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_relative_url', 'Composant'), ('variation_text', 'Variante'), ('quantity', 'Conso'), ('getAvailableInventory', 'Dispo'), ('getCurrentInventory', 'Stock'), ('getInventoryAtDate', 'Pr\xe9vu'), ('getFutureInventory', 'Futur'), ('getQuantityUnit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/site/Stock_MP', 'Stocks MP'), ('portal_categories/site', 'Sites')]</domain_root_list> - <domain_tree type="int">1</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>ProductionOrder_aggregatedMaterialConsumptionView</list_action> - <list_method type="method">ProductionOrder_getAggregatedMaterialConsumptionList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>production_order_current_inventory_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Consommations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildDeliveryList.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildDeliveryList.py deleted file mode 100755 index 3af772f77152bedeacfb779ed031ab4831de0a1e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildDeliveryList.py +++ /dev/null @@ -1,42 +0,0 @@ -## Script (Python) "ProductionOrder_buildDeliveryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title=Build Deliveries for a Production Order -## -order = context - -# Get movement list for production -movement_list = context.ProductionOrder_getMaterialProductionMovementList() -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list = context.portal_simulation.buildDeliveryList(root_group) - -# Get movements for sourcing -movement_list = context.ProductionOrder_getMaterialSourcingMovementList() -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list += context.portal_simulation.buildDeliveryList(root_group) - -# Get movements for outcome -movement_list = context.getOrderRelatedMovementList() -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list += context.portal_simulation.buildDeliveryList(root_group) - -# what's the gestionaire of this order -user_name = '' -# are we on a production order ? -if order.getPortalType() == 'Production Order' : - try : - user_name = order.getDestinationAdministrationPersonTitle().replace(' ','_') - except : - user_name = '' - -for delivery in delivery_list : - # update the state of the created deliveries to 'confirmed' - delivery.confirm() - # update local_roles - delivery.assign_gestionaire_designe_roles(user_name = user_name) - -return map(lambda o:o.getRelativeUrl(), delivery_list) diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildOrderList.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildOrderList.py deleted file mode 100755 index 9690eeac06981541f96aa21b423871718f5ab498..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_buildOrderList.py +++ /dev/null @@ -1,51 +0,0 @@ -## Script (Python) "ProductionOrder_buildOrderList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -if 1: - # Delete all proposed orders - for o in context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.ordre_fabrication.getUid()]) : - realo = o.getObject() - realo.aq_parent.deleteContent(realo.getId()) - - # Empty Zero Stock - context.portal_simulation.zero_stock.deleteContent(context.portal_simulation.zero_stock.contentIds()) - - # Expand Zero Stock as many times as needed (1 or 2 for the Coramy case) - # for i in range(0,1): - context.portal_simulation.zero_stock.expand() - -# Collect movements in Zero Stock applied rule -zs_movement_list = context.portal_simulation.zero_stock.contentValues() - -# keep only movements with a Modele resource -movement_list = [] -for movement in zs_movement_list : - resource_value = movement.getResourceValue() - if resource_value is not None: - if resource_value.getPortalType() == 'Modele' : - movement_list.append(movement) - -# Parse movements into a root group -root_group = context.portal_simulation.collectMovement(movement_list) -order_list = context.portal_simulation.buildOrderList(root_group) - -# update produced orders -for order in order_list: - order.autoPlan() - order.purchase_order_apply_condition() - -# reEmpty Zero Stock because we don't want to see the zero_stock quantities in the columns future_stock -context.portal_simulation.zero_stock.deleteContent(context.portal_simulation.zero_stock.contentIds()) - -request = context.REQUEST -redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+propositions+OF+créés.' % len(order_list) - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_expand.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_expand.py deleted file mode 100755 index 783b202217b47607c78259de7320187193ffee1b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_expand.py +++ /dev/null @@ -1,35 +0,0 @@ -## Script (Python) "ProductionOrder_expand" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -# Expands the applied rule associated with the production order - -of = context -request = context.REQUEST - -applied_rule_list = of.getCausalityRelatedValueList(portal_type="Applied Rule") -if len(applied_rule_list) == 0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Impossible+OF+non+validé.' - ) -elif len(applied_rule_list) == 1 : - - # of.expand(applied_rule_id=applied_rule_list[0]) - of.edit() - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Besoins+recalculés.' - ) -else : - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Problème+de+calcul+des+besoins.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getDeliveryCellPrintList.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getDeliveryCellPrintList.py deleted file mode 100755 index d94be0ac3681f49ea844961cb9f6dad8d6b31678..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getDeliveryCellPrintList.py +++ /dev/null @@ -1,103 +0,0 @@ -## Script (Python) "ProductionOrder_getDeliveryCellPrintList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -order_line = context -resource = order_line.getResourceValue() -movement_list = [] -pretty_list = [] - -if resource <> None : - - if order_line.hasCellContent() : - raw_movement_list = order_line.contentValues(filter={'portal_type':'Delivery Cell'}) - movement_list = order_line.sort_object_list(unordered_list=raw_movement_list, sort_order = (('variation_text', 'ASC'),)) - else : - movement_list.append(order_line) - - for movement in movement_list : - - my_variation_base_category_list = movement.getVariationBaseCategoryList() - if 'coloris' in my_variation_base_category_list : - if len(movement.getColorisValueList()) > 0 : - coloris_object = movement.getColorisValueList()[0] - else : - coloris_object = None - else : - coloris_object = None - if 'morphologie' in my_variation_base_category_list : - if len(movement.getMorphologieValueList()) > 0 : - morphologie_object = movement.getMorphologieValueList()[0] - else : - morphologie_object = None - else : - morphologie_object = None - - line_resource = resource.getId() -# line_designation = resource.getDescription() - if movement.getColoris() is not None : - line_coloris = ['coloris/'+movement.getColoris()] - else : - line_coloris = [] - if movement.getTaille() is not None : - line_taille = ['taille/'+movement.getTaille()] - else : - line_taille = [] - if movement.getMorphologie() is not None : - line_morphologie = ['morphologie/'+movement.getMorphologie()] - else : - line_morphologie = [] - variation_list = line_coloris + line_morphologie + line_taille - - if morphologie_object is not None : - corresp_variation_list = [movement.getTaille()]+[morphologie_object.getMorphoType()] - else : - corresp_variation_list = [movement.getTaille()]+['value'] - - # find taille_client - line_taille_client = movement.Amount_getTailleClient() - -# correspondance_list = resource.getSpecialiseValueList(portal_type='Correspondance Tailles') -# if len(correspondance_list) == 1 : -# my_correspondance = correspondance_list[0] -# mapped_value_list = my_correspondance.objectValues() -# for mapped_value in mapped_value_list : -# if mapped_value.test(my_correspondance.asContext(categories=corresp_variation_list)) : -# line_taille_client = mapped_value.getProperty(key='taille_client') -# break - - try : - line_quantity = float(movement.getProperty(key='quantity')) - except : - line_quantity = 0 - - line_date = order_line.aq_parent.getStopDate() - - # find code_article - line_code_article = movement.Amount_getCodeArticleClient() - -# variated_reference_list = resource.contentValues(filter={'portal_type':'Variated Reference'}) -# # we search a variated_reference wich define 'code_article' -# my_variated_reference = None -# for variated_reference in variated_reference_list : -# if len(variated_reference.getMappedValuePropertyList()) <> 0 : -# if variated_reference.getMappedValuePropertyList()[0] == 'code_article' : -# my_variated_reference = variated_reference -# break -# if my_variated_reference is not None : -# mapped_value_list = my_variated_reference.objectValues() -# for mapped_value in mapped_value_list : -# if mapped_value.test(my_variated_reference.asContext(categories=variation_list)) : -# line_code_article = mapped_value.getProperty(key='code_article') -# break - - line_items = [line_resource,line_coloris,line_morphologie,line_taille, - line_taille_client,line_quantity,line_date,line_code_article] - pretty_list.append(line_items) - -return pretty_list diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getTotalDuration.py b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getTotalDuration.py deleted file mode 100755 index 872e21d961cb4f58e7fc7eb42c1e7c264145da0d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_getTotalDuration.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "ProductionOrder_getTotalDuration" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -if len(movement_uid_list) > 0 : - return context.ProductionOrder_zGetTotalDuration(order_related_movement_uid_list = movement_uid_list)[0].quantity/60 -else : - return 0 diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_inventoryView.form b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_inventoryView.form deleted file mode 100755 index eb68b74a4f310598aa7ace1a63ee0ab5742475c7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_inventoryView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Productions</title> - <row_length>4</row_length> - <name>ProductionOrder_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('resource_relative_url', 'Composant'), ('variation_text', 'Variante'), ('quantity', 'Qt\xe9'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('getFutureInventory', 'Futur'), ('getQuantityUnit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/site/Stock_MP', 'Stocks MP'), ('portal_categories/site', 'Sites')]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">ProductionOrder_getAggregatedMaterialProductionList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>resource_current_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Productions</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_zGetTotalDuration.zsql b/product/Coramy/skins/coramy_manufacturing/ProductionOrder_zGetTotalDuration.zsql deleted file mode 100755 index 6b3fef98782bc8a7a04c7d1161fbf36bca3a1c7c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionOrder_zGetTotalDuration.zsql +++ /dev/null @@ -1,38 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - SUM(movement.target_quantity) as target_quantity, - SUM(movement.quantity) as quantity -FROM - catalog AS transformation_rule, - catalog AS resource, - category AS resource_category, - catalog, - stock, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.uid = catalog.uid -<dtml-if order_related_movement_uid_list> -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if> -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND resource.portal_type = "Category" -AND resource_category.uid = resource.uid -AND resource_category.category_uid = resource.uid -AND resource_category.base_category_uid = <dtml-var "portal_categories.operation.getUid()"> -AND resource.id <> "coupe" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/ProductionPackingList_getProductionOrderDescription.py b/product/Coramy/skins/coramy_manufacturing/ProductionPackingList_getProductionOrderDescription.py deleted file mode 100755 index e30457a31196d217cd39f243f253cf15d09653cf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/ProductionPackingList_getProductionOrderDescription.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "ProductionPackingList_getProductionOrderDescription" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -packing_list = context -order = context.getDefaultCausalityValue() -if order is not None : - return order.getDescription() -else : - return '' diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_line_price_view.form b/product/Coramy/skins/coramy_manufacturing/production_order_line_price_view.form deleted file mode 100755 index 78da928acf336355401451ca83f80cd8a6052a51..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_line_price_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'OF</title> - <row_length>4</row_length> - <name>production_order_line_price_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('target_quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_line_quantity_view.form b/product/Coramy/skins/coramy_manufacturing/production_order_line_quantity_view.form deleted file mode 100755 index 7c6c9b6970a8c2c2379f445222c9b751b44db4a7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_line_quantity_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'OF</title> - <row_length>4</row_length> - <name>production_order_line_price_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('target_quantity', 'target_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_line_view.form b/product/Coramy/skins/coramy_manufacturing/production_order_line_view.form deleted file mode 100755 index a622378517ad64d4e0b4ba03f99092c056bef5dc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_line_view.form +++ /dev/null @@ -1,528 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'OF</title> - <row_length>4</row_length> - <name>production_order_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Gamme', 'Gamme'), ('Assortiment', 'Assortiment')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Demandé au plus tôt le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Demandé au plus tard le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer2</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Confirmé au plus tôt le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Confirmé au plus tard le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer3</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Montant total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_list.form b/product/Coramy/skins/coramy_manufacturing/production_order_list.form deleted file mode 100755 index fdfea0e869826b025854992a5a7b7157a1f3d269..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des ordres de fabrication</title> - <row_length>4</row_length> - <name>production_order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'OF'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Date livraison'), ('simulation_state', 'Etat'), ('discussion_state', 'Discussion')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'OF'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Date livraison'), ('simulation_state', 'Etat'), ('discussion_state', 'Discussion')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Order', 'Production Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>production_order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ordres de fabrication</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_print.pt b/product/Coramy/skins/coramy_manufacturing/production_order_print.pt deleted file mode 100755 index 626f20cae9ae21f69170673e632fe0cd690c6bf1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_print.pt +++ /dev/null @@ -1,161 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="mesure"> - </HEAD> - - <BODY tal:define="commercial python:here.getSourceAdministrationValue(portal_type=['Person']); - fournisseur python:here.getSourceValue(portal_type=['Organisation','Category']); - livraison python:here.getDestinationValue(portal_type= - ['Organisation','Category']); - totalizer python:[0]; - order_lines_list python:here.contentValues(filter={'portal_type': - 'Production Order Line'})"> - - <TABLE width="660" height="900" cellpadding="0" cellspacing="0"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD> - <h2>Coramy</h2> - </TD> - <TD align="center"> - <h2><span tal:content="python:'Ordre de fabrication n° '+here.getId()"/></h2> - </TD> - <TD align="right"> - <span tal:content="python:'Emis le : '+str(here.getDateEmission())"/> - </TD> - </TR> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR height="10%"><!-- Infos --> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="bold" nowrap>Livrer à</TD> - <TD nowrap> - <SPAN tal:condition="python:livraison<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(livraison.getTitle())"/></b> - <br><SPAN tal:condition="python:livraison.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(livraison.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD width="100%"> </TD> - <TD class="bold" nowrap>Produit par</TD> - <TD nowrap> - <SPAN tal:condition="python:fournisseur<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(fournisseur.getTitle())"/></b> - </SPAN> - </TD> - </TR> - - </TABLE> - </TD> - </TR> - - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR><!-- Tableau de lignes de commande --> - <TD valign="top"> - <TABLE border="2" width="100%"> - <TR> - <TD class="bold" align="center">Modèle</TD> - <TD class="bold" align="center" width="100%">Coloris</TD> - <TD class="bold" align="center">Morphologie</TD> - <TD class="bold" align="center">Taille Coramy</TD> - <TD class="bold" align="center">Taille client</TD> - <TD class="bold" align="center">Code client</TD> - <TD class="bold" align="center">Quantité</TD> - <TD class="bold" align="center">Date livraison</TD> - </TR> - <SPAN tal:repeat="order_line order_lines_list"> - <SPAN tal:define="delivery_cell_list python:order_line.ProductionOrder_getDeliveryCellPrintList()"> - <TR tal:repeat="delivery_cell delivery_cell_list"> - <TD nowrap tal:content="python:delivery_cell[0]" align="left"></TD> - - <TD nowrap tal:define="variantes_list python:delivery_cell[1]" align="left"> - <SPAN tal:repeat="variante variantes_list"> - <SPAN tal:condition="python:variante<>'value' and variante<>None"> - <SPAN tal:define="variante_items python:variante.split('/')"> - <SPAN tal:content="python:variante_items[len(variante_items)-1]"/><BR> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD nowrap tal:define="variantes_list python:delivery_cell[2]" align="left"> - <SPAN tal:repeat="variante variantes_list"> - <SPAN tal:condition="python:variante<>'value' and variante<>None"> - <SPAN tal:define="variante_items python:variante.split('/')"> - <SPAN tal:content="python:variante_items[len(variante_items)-1]"/><BR> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD nowrap tal:define="variantes_list python:delivery_cell[3]" align="left"> - <SPAN tal:repeat="variante variantes_list"> - <SPAN tal:condition="python:variante<>'value' and variante<>None"> - <SPAN tal:define="variante_items python:variante.split('/')"> - <SPAN tal:content="python:variante_items[len(variante_items)-1]"/><BR> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD nowrap tal:content="python:delivery_cell[4]" align="center"></TD> - <TD nowrap tal:content="python:delivery_cell[7]" align="center"></TD> - <TD tal:content="python: '%.0f' % delivery_cell[5]" align="right"></TD> - <TD tal:content="python:delivery_cell[6]" align="center"></TD> - <SPAN tal:define="toto python:order_line.PT_update_total_list(totalizer,[0],delivery_cell[5])"/> - </TR> - </SPAN> - </SPAN> - <TR> - <TD colspan="6" align="right">Total - </TD> - <TD align ="right"> - <b><span tal:content="python: '%.0f' %totalizer[0]"/></b> - <TD> - </TD> - </TR> - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split(here.getComment(''),'\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <br> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR> - <TD height="90%"/> - </TR> - <TR> - <TD align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_manufacturing/production_order_view.form b/product/Coramy/skins/coramy_manufacturing/production_order_view.form deleted file mode 100755 index af553e78bba1c7c2fd76b9dfcdff521523ce113c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_order_view.form +++ /dev/null @@ -1,853 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ordre de fabrication</title> - <row_length>4</row_length> - <name>production_order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ordre de fabrication</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_date_emission</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>OF émis le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_commande_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Support de l'OF</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/commande_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person'), ('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Contact</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de coupe demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de coupe confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>discussion_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Discussion</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'discussion_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_trade_condition_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>condition_achat</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Condition Achat', 'Condition Achat')]</portal_type> - <required type="int">0</required> - <title>Condition d'achat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_duration</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Durée totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Durée totale (h) : %.2f' % here.ProductionOrder_getTotalDuration()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('ProductionOrderLine_getResourceState', 'Etat produit'), ('ProductionOrderLine_getResourceAccord', 'Accord technique'), ('ProductionOrderLine_getResourceInfosClient', 'Infos client'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('ProductionOrderLine_getResourceState', 'Etat produit'), ('ProductionOrderLine_getResourceAccord', 'Accord technique'), ('ProductionOrderLine_getResourceInfosClient', 'Infos client'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Order Line', 'Production Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>purchase_order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'OF</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix d'achat</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_packing_list_aggregated_view.form b/product/Coramy/skins/coramy_manufacturing/production_packing_list_aggregated_view.form deleted file mode 100755 index 737813f6ba694fced4d6ea7c3433cbd0b15578b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_packing_list_aggregated_view.form +++ /dev/null @@ -1,647 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison fabrication</title> - <row_length>4</row_length> - <name>production_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>ordre_fabrication</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Production Order', 'Production Order')]</portal_type> - <required type="int">0</required> - <title>N° OF</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livré à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tôt le</title> - </values> - <tales> - <title>python:'Prévu au plus tôt le : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tôt le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tard le</title> - </values> - <tales> - <title>python:'Prévu au plus tard le : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tard le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Packing List Line', 'Production Packing List Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>production_packing_list_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_packing_list_list.form b/product/Coramy/skins/coramy_manufacturing/production_packing_list_list.form deleted file mode 100755 index 29410f254e3e96f2e2ae06af469b5d91a4e50cd2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_packing_list_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de livraisons fabrication</title> - <row_length>4</row_length> - <name>production_packing_list_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Livraison'), ('default_causality_id', 'OF'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Livraison'), ('default_causality_id', 'OF'), ('ProductionPackingList_getProductionOrderDescription', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Packing List', 'Production Packing List')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>production_packing_list_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Livraisons de fabrication</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_packing_list_print.pt b/product/Coramy/skins/coramy_manufacturing/production_packing_list_print.pt deleted file mode 100755 index 4fa98b5457a6daca0ce9c3397e4777a8ecc0807f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_packing_list_print.pt +++ /dev/null @@ -1,137 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </HEAD> - - <BODY bgcolor="#ffffff" tal:define="delivery_list python:here.object_action_list(selection_name='production_packing_list_selection',max_nb=10)"> -<TABLE tal:repeat="delivery delivery_list" width="660" height="955" cellpadding="0" cellspacing="0" class="PageA4"> - <TABLE width="660" height="900" cellpadding="0" cellspacing="0" - tal:define="fournisseur python:delivery.getSourceValue(portal_type=['Organisation','Category']); - livraison python:delivery.getDestinationValue(portal_type= - ['Organisation','Category']); - grand_total python:[0]; - order_lines python:delivery.contentValues(filter={'portal_type': - 'Production Packing List Line'}); - order_lines_list python:delivery.sort_object_list(unordered_list=order_lines,sort_order = (('resource', 'ASC'),))"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD valign="top"> - <h2>Coramy</h2> - </TD> - <TD align="center"> - <h2>Livraison fabrication n° <span tal:content="python:delivery.getId()"/></h2> - <h2>OF n° <span tal:content="python:delivery.getDefaultCausalityId()"/></h2> - </TD> - <TD valign="top" align="right"> - <span tal:content="python:'Expédiée le : '+str(delivery.getStartDate())"/> - </TD> - </TR> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR height="10%"><!-- Infos --> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD nowrap class="bold">Expédié par </TD> - <TD nowrap> - <SPAN tal:condition="python:fournisseur<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(fournisseur.getTitle())"/></b> - </SPAN> - </TD> - <TD width="100%"> </TD> - <TD nowrap class="bold">Livrer à </TD> - <TD nowrap> - <SPAN tal:condition="python:livraison<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(livraison.getTitle())"/></b> - <br><SPAN tal:condition="python:livraison.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(livraison.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - </TR> - - </TABLE> - </TD> - </TR> - - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR><!-- Tableau de lignes de commande --> - <TD valign="top"> - <TABLE border="2" width="100%"> - <TR> - <TD class="bold" align="center">Code interne</TD> - <TD class="bold" align="center">Type composant</TD> - <TD class="bold" align="center">Fournisseur</TD> - <TD class="bold" align="center" width="100%">Désignation</TD> - <TD class="bold" align="center">Variantes</TD> - <TD class="bold" align="center">Quantité</TD> - <TD class="bold" align="center">Unité</TD> - </TR> - <SPAN tal:repeat="order_line order_lines_list"> - <SPAN tal:define="delivery_cell_list python:order_line.getDeliveryCellPrintList()"> - <TR tal:repeat="delivery_cell delivery_cell_list"> - <TD tal:content="python:delivery_cell[1]" align="left"></TD> - <TD nowrap tal:content="python:delivery_cell[9]" align="left"></TD> - <TD tal:content="python:delivery_cell[10]" align="left"></TD> - <TD tal:content="python:delivery_cell[2]" align="left"></TD> - <TD nowrap tal:define="variantes_list python:delivery_cell[3]" align="left"> - <SPAN tal:repeat="variante variantes_list"> - <SPAN tal:condition="python:variante<>'value' and variante<>None"> - <SPAN tal:define="variante_items python:variante.split('/')"> - <SPAN tal:content="python:variante_items[len(variante_items)-1]"/><BR> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD tal:content="python: '%.0f' % delivery_cell[4]" align="right"></TD> - <TD tal:content="python:delivery_cell[5]" align="left"></TD> - - </TR> - </SPAN> - </SPAN> - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split(delivery.getComment(''),'\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <br> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR> - <TD height="90%"/> - </TR> - <TR> - <TD align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> -</TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_manufacturing/production_packing_list_view.form b/product/Coramy/skins/coramy_manufacturing/production_packing_list_view.form deleted file mode 100755 index 7db302a026cda211735666851ae33d217e4894e9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_packing_list_view.form +++ /dev/null @@ -1,680 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison fabrication</title> - <row_length>4</row_length> - <name>production_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Production Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>ordre_fabrication</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Production Order', 'Production Order')]</portal_type> - <required type="int">0</required> - <title>N° OF</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livré à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Eexpédition prévue le : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Livraison prévue le : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('quantity', 'Objectif quantit\xe9'), ('target_quantity', 'Quantit\xe9'), ('item_id_list', 'Lots associ\xe9s'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('getDeliveryCellResourceSourceTitle', 'Fournisseur'), ('quantity', 'Objectif quantit\xe9'), ('target_quantity', 'Quantit\xe9'), ('item_id_list', 'Lots associ\xe9s'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('target_quantity', 'target_quantity'), ('item_id_list', 'item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">8</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_report_aggregated_view.form b/product/Coramy/skins/coramy_manufacturing/production_report_aggregated_view.form deleted file mode 100755 index ef42e7105623546d81a9658d3b5c499f54d026ae..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_report_aggregated_view.form +++ /dev/null @@ -1,613 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison fabrication</title> - <row_length>4</row_length> - <name>production_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tôt le</title> - </values> - <tales> - <title>python:'Prévu au plus tôt le : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tôt le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tard le</title> - </values> - <tales> - <title>python:'Prévu au plus tard le : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tard le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Report Component', 'Production Report Component'), ('Production Report Operation', 'Production Report Operation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>sales_packing_list_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_report_list.form b/product/Coramy/skins/coramy_manufacturing/production_report_list.form deleted file mode 100755 index 6f966e216890204679faa5f3addc1db15ec20ca9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_report_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de rapports fabrication</title> - <row_length>4</row_length> - <name>production_report_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Rapport'), ('default_causality_id', 'OF'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('stop_date', 'Pr\xe9vu avant le'), ('target_stop_date', 'Livr\xe9 avant le'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Rapport'), ('default_causality_id', 'OF'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Produit par'), ('stop_date', 'Pr\xe9vu avant le'), ('target_stop_date', 'Livr\xe9 avant le'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Production Report', 'Production Report')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>production_report_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Rapports de fabrication</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_manufacturing/production_report_view.form b/product/Coramy/skins/coramy_manufacturing/production_report_view.form deleted file mode 100755 index 02774999db2a815c751517418edc3b1212f242f7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_manufacturing/production_report_view.form +++ /dev/null @@ -1,705 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rapport fabrication</title> - <row_length>4</row_length> - <name>production_report_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° rapport</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Purchase Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livré à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tôt le</title> - </values> - <tales> - <title>python:'Prévu au plus tôt le : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tôt le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Prévu au plus tard le</title> - </values> - <tales> - <title>python:'Prévu au plus tard le : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livré au plus tard le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('production_quantity', 'Production'), ('consumption_quantity', 'Consommation'), ('quantity_unit', 'Unit\xe9'), ('price', 'Prix'), ('item_id_list', 'Lots associ\xe9s')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('production_quantity', 'Production'), ('consumption_quantity', 'Consommation'), ('quantity_unit', 'Unit\xe9'), ('price', 'Prix'), ('item_id_list', 'Lots associ\xe9s')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('item_id_list', 'item_id_list'), ('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de production/consommation</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Production</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Production</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ActivityTool_activateAssetPriceUpdate.py b/product/Coramy/skins/coramy_mrp/ActivityTool_activateAssetPriceUpdate.py deleted file mode 100755 index 8000fe45555ae42f6fa24931f8728d3e8093c9e9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ActivityTool_activateAssetPriceUpdate.py +++ /dev/null @@ -1,60 +0,0 @@ -## Script (Python) "ActivityTool_activateAssetPriceUpdate" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Retrieve all resources and commit select -pf_resource_list = context.SimulationTool_zGetResourceList(portal_type=['Modele', 'Assortiment']) -mp_resource_list = context.SimulationTool_zGetResourceList(portal_type=['Tissu', 'Composant']) -context.portal_simulation.commitTransaction() - -# Create a new active_process -active_process = context.portal_activities.newActiveProcess(title="Calcul de valorisation du stock") - -# Activate updateAssetPrice for PF -commit = 100 -for b in list(pf_resource_list)[0:] : - relative_url = b.relative_url - variation_text = b.variation_text - if relative_url not in (None, ''): - if variation_text not in (None, '') or b.portal_type != 'Modele': - print "##Calculate price for %s %s" % (b.relative_url, b.variation_text) - result = context.portal_simulation.activate(activity='SQLQueue', priority=3, active_process=active_process).updateAssetPrice( - relative_url, variation_text, "group/Coramy", "site/Stock_PF" ) - #print repr(result) - else: - print "###Error variation for %s" % relative_url - #commit = commit -1 - #if commit == 0: - # # Commit from time to time - # context.portal_simulation.commitTransaction() - # commit = 100 - else: - print "###Error unknow resource '%s'" % b.relative_url - -# Activate updateAssetPrice for MP -commit = 100 -for b in list(mp_resource_list)[0:] : - relative_url = b.relative_url - variation_text = b.variation_text - if relative_url not in (None, ''): - if variation_text not in (None,): - print "##Calculate price for %s %s" % (b.relative_url, b.variation_text) - result = context.portal_simulation.activate(activity='SQLQueue', priority=3, active_process=active_process).updateAssetPrice( - relative_url, variation_text, "group/Coramy", "site/Stock_MP" ) - #print repr(result) - else: - print "###Error variation for %s" % relative_url - #commit = commit -1 - #if commit == 0: - # # Commit from time to time - # context.portal_simulation.commitTransaction() - # commit = 100 - else: - print "###Error unknow resource '%s'" % b.relative_url - -return printed diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_futureCoramyInventoryView.form b/product/Coramy/skins/coramy_mrp/ERP5Site_futureCoramyInventoryView.form deleted file mode 100755 index 99f79a4e5adc75df1d29bae6eec840b1d5ac0350..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_futureCoramyInventoryView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>current_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('section_title', 'Propri\xe9taire'), ('resource_title', 'Composant'), ('variation_text', 'Variante'), ('inventory', 'Quantit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Delivery_inventoryView</list_action> - <list_method type="method">ERP5Site_getCoramyFutureInventoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>base_coramy_future_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Stock futur par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>pie_3d</chart_style> - <chart_title>Excédents Actuels</chart_title> - <css_class></css_class> - <data_method>Resource_getChartCurrentInventoryList</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Excédents Actuels</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_getAssetList.py b/product/Coramy/skins/coramy_mrp/ERP5Site_getAssetList.py deleted file mode 100755 index 6275fd50e8139aa580a7891bee6f5f22637951b7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_getAssetList.py +++ /dev/null @@ -1,62 +0,0 @@ -## Script (Python) "ERP5Site_getAssetList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=group_by_node=0, group_by_section=0, group_by_variation=0 -##title= -## -request = context.REQUEST -stock_MP = 0 -stock_PF = 1 - -if stock_MP == 1 : - inventory_list = context.Resource_zGetStockMPInventoryList(calculate_asset=1, - node_category='site/Stock_MP', section_category='group/Coramy', - group_by_node=group_by_node, group_by_section=group_by_section, - group_by_variation=group_by_variation, - simulation_state=['delivered', 'started', 'stopped', 'invoiced','planned','getting_ready','confirmed','ready', 'ordered']) - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % ('Nature composant', 'Code composant', 'Variante', 'Quantite', 'Prix unitaire', 'Montant total', 'Type composant', 'Fournisseur') - for b in inventory_list: - if b.inventory <> 0 : - amount_object = b.getObject() - if amount_object is not None : - unit_price = amount_object.Amount_getSupplierPrice() - else : - unit_price = 0 - # AS SOON AS POSSIBLE asset_price should be given by b.asset_price an not unit_price*b.inventory - if group_by_variation: - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (b.resource_relative_url.split('/')[0], b.resource_relative_url.split('/')[-1], b.variation_text.replace('\n', '-'), - str(b.inventory).replace('.',','), str(unit_price).replace('.',','), str(unit_price*b.inventory).replace('.',','), b.type_title, b.source_title) - else: - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (b.resource_relative_url.split('/')[0], b.resource_relative_url.split('/')[-1], '', - str(b.inventory).replace('.',','), str(unit_price).replace('.',','), str(unit_price*b.inventory).replace('.',','), b.type_title, b.source_title) - -if stock_PF == 1 : - inventory_list = context.Resource_zGetStockPFInventoryList(calculate_asset=1, - node_category='site/Stock_PF', section_category='group/Coramy', collection_url='collection/2004/DIM', - group_by_node=group_by_node, group_by_section=group_by_section, - group_by_variation=group_by_variation, to_date = "2003/11/30", - section_uid=context.portal_categories.group.Coramy.uid, - simulation_state=['delivered', 'started', 'stopped', 'invoiced']) # FOR FUTURE INVNETORY add ,'planned','getting_ready','confirmed','ready', 'ordered' - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % ('Nature produit', 'Code produit', 'Variantes', 'Quantite', 'Prix unitaire', 'Montant total', 'Famille', 'Client') - for b in inventory_list: - if b.inventory <> 0 : - amount_object = b.getObject() - if amount_object is not None : - try : - pri = amount_object.Amount_getPri() - except : - pri = -99 - else : - pri = 0 - if group_by_variation: - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (b.resource_relative_url.split('/')[0], b.resource_relative_url.split('/')[-1], b.variation_text.replace('\n', '-'), - str(b.inventory).replace('.',','), str(pri).replace('.',','), str(b.inventory*pri).replace('.',','), b.famille_title, b.destination_title, b.section_title) - else: - print "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (b.resource_relative_url.split('/')[0], b.resource_relative_url.split('/')[-1], '', - str(b.inventory).replace('.',','), str(pri).replace('.',','), str(b.inventory*pri).replace('.',','), b.famille_title, b.destination_title, b.section_title) - -request.RESPONSE.setHeader('Content-Type','application/text') -return printed diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_getCoramyFutureInventoryList.py b/product/Coramy/skins/coramy_mrp/ERP5Site_getCoramyFutureInventoryList.py deleted file mode 100755 index b58875dece4dac93d1baef03b175ee68cb1f4ea6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_getCoramyFutureInventoryList.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "ERP5Site_getCoramyFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -return context.ERP5Site_zGetCoramyFutureInventoryList(**kw) diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_getGroupFutureInventoryList.py b/product/Coramy/skins/coramy_mrp/ERP5Site_getGroupFutureInventoryList.py deleted file mode 100755 index de538610b8487100fbea0c743c6a3a5ca242b7c9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_getGroupFutureInventoryList.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "ERP5Site_getGroupFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -return context.ERP5Site_getCoramyFutureInventoryList(**kw) diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_transferOfProperty.py b/product/Coramy/skins/coramy_mrp/ERP5Site_transferOfProperty.py deleted file mode 100755 index 8fd454a63ca2f0abfe346d61e801f68f3510992e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_transferOfProperty.py +++ /dev/null @@ -1,112 +0,0 @@ -## Script (Python) "ERP5Site_transferOfProperty" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=to_date -##title= -## -## Warnings: -## Prints, but never reads 'printed' variable. -## -from Products.ERP5.Document import newTempMovement -from DateTime import DateTime - -# Stock sourcing states -source_state_list = ('delivered', 'started', 'stopped', 'invoiced') -coef_marge_coramy = 1.35 - -# Default date -now_date = DateTime(DateTime().Date()) -to_date = "2003/10/31" - -# Get inventory list -inventory_list = context.Resource_zGetStockPFInventoryList(calculate_asset=1, - node_category='site/Stock_PF', section_category='group/Coramy', - collection_url='collection/2004/DIM', - group_by_node=0, group_by_section=1, - group_by_variation=1, to_date=to_date, - section_uid=context.portal_categories.group.Coramy.uid, - simulation_state=source_state_list) - -# Commit SQL -context.portal_simulation.commitTransaction() - -# build a dictionnary of quantity, variation -quantity_dict = {} -price_dict = {} -variation_dict = {} -for inventory_item in inventory_list: - movement = inventory_item.getObject() - if movement is not None: - key = (inventory_item.resource_relative_url, tuple(movement.getVariationCategoryList())) - if not (key in quantity_dict.keys()) : - quantity_dict[key] = {} - price_dict[key] = {} - quantity_dict[key][inventory_item.section_title] = inventory_item.inventory - price_dict[key][inventory_item.section_title] = movement.Amount_getPri()*coef_marge_coramy - variation_dict[key] = movement.getVariationCategoryList() - - else: - pass - #LOG('WARNING',0,'None movement found') - -# Find out which are the movements to create -to_create = [] -for key in quantity_dict.keys() : - section_list = quantity_dict[key].keys() - if 'Coramy' in section_list : - if quantity_dict[key]['Coramy'] > 0 : - to_create.append(key) - -movement_list = [] - -new_id = 0 -# Create movements which are needed -for relative_url, variation_category_list in to_create: - # CHECK IF EXISTING ID - key = (relative_url, variation_category_list) - new_id += 1 - movement = newTempMovement( context.portal_simulation , str(new_id) ) - movement.edit( resource=relative_url ) - movement.setVariationCategoryList( variation_category_list ) - resource = movement.getResourceValue() - - if resource is not None: - # Only order existing resources - stop_date = to_date - - if resource.getPortalType() in ('Modele', 'Assortiment'): - source = 'site/Stock_PF/Gravelines' - source_section = 'group/Coramy' - destination_section = 'group/Coramy/BLS' - destination = 'site/Stock_PF/Gravelines' - else: - source = source_section = resource.getSource() - destination_section = 'group/Coramy' - destination = 'site/Stock_MP/Gravelines' - movement.edit(target_quantity = quantity_dict[key]['Coramy'], - price = price_dict[key]['Coramy'], - target_start_date = stop_date, - target_stop_date = stop_date, - source = source, - source_section = source_section, - destination_section = destination_section, - destination = destination, - quantity_unit = resource.getDefaultQuantityUnit()) - print "Order %s %s quantity: %s" % (movement.getResource(), movement.getVariationText(), movement.getNetConvertedTargetQuantity()) - movement_list.append(movement) - -# Build Deliveries -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list = context.portal_simulation.buildDeliveryList(root_group) - -# Update deliveries -for delivery in delivery_list : - # update the state of the created deliveries to 'confirmed' - delivery.confirm() - # update local_roles - delivery.assign_gestionaire_designe_roles(user_name = '') - -return delivery_list diff --git a/product/Coramy/skins/coramy_mrp/ERP5Site_zGetCoramyFutureInventoryList.zsql b/product/Coramy/skins/coramy_mrp/ERP5Site_zGetCoramyFutureInventoryList.zsql deleted file mode 100755 index 3442390c786835cf5ed99f73e81f0d4d87c342e9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ERP5Site_zGetCoramyFutureInventoryList.zsql +++ /dev/null @@ -1,32 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>before_date -</params> -SELECT - SUM(stock.quantity) as inventory, - section.title AS section_title, - resource.title AS resource_title, - MAX(movement_line.path) as path, - movement.variation_text AS variation_text -FROM - catalog, movement, stock, catalog as section, catalog as resource, catalog as movement_line -WHERE - catalog.uid = movement.uid -AND catalog.uid = stock.uid -AND movement.is_accountable = 1 -AND movement_line.uid = movement.uid -AND section.uid = stock.section_uid -AND movement.resource_uid = resource.uid -AND section.relative_url='group/Coramy' -<dtml-if before_date>AND movement.start_date < <dtml-sqlvar before_date type="string"> -</dtml-if>GROUP BY - movement.variation_text -ORDER BY - inventory DESC \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/InventoryLine_matrixItemList.py b/product/Coramy/skins/coramy_mrp/InventoryLine_matrixItemList.py deleted file mode 100755 index 22669166d945dff0afd97986d9de957372bea3f7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryLine_matrixItemList.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "InventoryLine_matrixItemList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category_list=[], base=1, include=1 -##title= -## -clist = [] -variation_category_list=[] - -if include == 1 : - for category in context.getVariationBaseCategoryList(): - if category in base_category_list : - variation_category_list.append(category) -else : - for category in context.getVariationBaseCategoryList(): - if not category in base_category_list : - variation_category_list.append(category) - -for base_category in variation_category_list : - if base_category in ('coloris','morphologie','variante'): - raw_list = context.getResourceValue().getVariationRangeCategoryItemList(base_category, base=0) - value_list = [] - title_list = [] - for item in raw_list : - title_list.append(item[0]) - value_list.append(base_category+'/'+item[1]) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - else : - title_list = context.getResourceValue().getCategoryMembershipList(base_category, base=0) - value_list = context.getResourceValue().getCategoryMembershipList(base_category, base=base) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - -if len(clist)==0 : - clist.append((None,None)) - -return clist diff --git a/product/Coramy/skins/coramy_mrp/InventoryLine_zGetTotal.zsql b/product/Coramy/skins/coramy_mrp/InventoryLine_zGetTotal.zsql deleted file mode 100755 index 4cda8c0d79e4fdf2d7bbe811de1c5e6ec855a99e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryLine_zGetTotal.zsql +++ /dev/null @@ -1,16 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -SELECT SUM(quantity) AS total_inventory, SUM(target_quantity) AS target_total_inventory -FROM catalog, movement -WHERE -catalog.parent_uid = <dtml-sqlvar uid type="int"> -AND -catalog.uid = movement.uid \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/InventoryMP_fastAddLine.py b/product/Coramy/skins/coramy_mrp/InventoryMP_fastAddLine.py deleted file mode 100755 index 4185e703624e1cafff7193237cf4d476303c228f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryMP_fastAddLine.py +++ /dev/null @@ -1,63 +0,0 @@ -## Script (Python) "InventoryMP_fastAddLine" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=product_reference_list=[], supplier_list=[] -##title=Add Lines to an Inventory -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -inventory_line_portal_type = "Inventory MP Line" -product_list = [] -request=context.REQUEST - -try: - - if product_reference_list <> '' : - product_list += product_reference_list - - elif len(supplier_list) > 0 : - product_raw_list = context.Resource_sqlResourceSupplierSearch(supplier_title_list=supplier_list) - for product_item in product_raw_list : - product_list.append(product_item.title) - - for line_product in product_list : - - new_id = str(context.generateNewId()) - context.portal_types.constructContent(type_name=inventory_line_portal_type, - container=context, - id=new_id) - resource_list = context.portal_catalog(title=line_product, portal_type=('Tissu','Composant'), Title=line_product) - if len(resource_list) > 0: - resource_value = resource_list[0].getObject() - if resource_value is not None: - - if resource_value.getPortalType() == 'Tissu' : - my_variation_base_category_list = ['coloris'] - elif resource_value.getPortalType() == 'Composant' : - my_variation_base_category_list = ['variante'] - else : - my_variation_base_category_list = [] - - context[new_id].edit(description=line_product , - resource_value = resource_value, - variation_base_category_list = my_variation_base_category_list ) -# my_variation_category_list = [] -# for category_tuple in context[new_id].getVariationRangeCategoryItemList() : -# my_variation_category_list.append(category_tuple[0]) -# context[new_id].setVariationCategoryList(my_variation_category_list) - else: - context[new_id].edit(description=line_product) - context.Folder_reindexAll() -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=Data+Updated.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/InventoryMP_fastInputForm.form b/product/Coramy/skins/coramy_mrp/InventoryMP_fastInputForm.form deleted file mode 100755 index 8c3f32c393b8721704028f958cf55277473a610c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryMP_fastInputForm.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>Inventory Fast Input</name> - <pt>form_dialog</pt> - <action>InventoryMP_fastAddLine</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_supplier_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Fournisseurs</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.Resource_getSupplierItemList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_product_reference_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">15</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Produits à inventorier</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/InventoryPF_fastAddLine.py b/product/Coramy/skins/coramy_mrp/InventoryPF_fastAddLine.py deleted file mode 100755 index 59efad52ca095bbd9c9f4dff189b8711ecc930fd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryPF_fastAddLine.py +++ /dev/null @@ -1,56 +0,0 @@ -## Script (Python) "InventoryPF_fastAddLine" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=product_reference_list=[], supplier_list=[] -##title=Add Lines to an Inventory -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -inventory_line_portal_type = "Inventory PF Line" -product_list = [] -request=context.REQUEST - -try: - - if product_reference_list <> '' : - product_list += product_reference_list - - for line_product in product_list : - - new_id = str(context.generateNewId()) - context.portal_types.constructContent(type_name=inventory_line_portal_type, - container=context, - id=new_id) - resource_list = context.portal_catalog(title=line_product, portal_type=('Modele','Assortiment'), Title=line_product) - if len(resource_list) > 0: - resource_value = resource_list[0].getObject() - if resource_value is not None: - - if resource_value.getPortalType() == 'Modele' : - my_variation_base_category_list = ['coloris'] - else : - my_variation_base_category_list = [] - - context[new_id].edit(description=line_product , - resource_value = resource_value, - variation_base_category_list = my_variation_base_category_list ) -# my_variation_category_list = [] -# for category_tuple in context[new_id].getVariationRangeCategoryItemList() : -# my_variation_category_list.append(category_tuple[0]) -# context[new_id].setVariationCategoryList(my_variation_category_list) - else: - context[new_id].edit(description=line_product) - context.Folder_reindexAll() -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=Data+Updated.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/InventoryPF_fastInputForm.form b/product/Coramy/skins/coramy_mrp/InventoryPF_fastInputForm.form deleted file mode 100755 index aa0c6fe9838958b7e6f5015bba2f30fce1baf709..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/InventoryPF_fastInputForm.form +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>Inventory Fast Input</name> - <pt>form_dialog</pt> - <action>InventoryPF_fastAddLine</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_product_reference_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">15</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Produits à inventorier</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Inventory_inventoriateLocatedPieceTissu.py b/product/Coramy/skins/coramy_mrp/Inventory_inventoriateLocatedPieceTissu.py deleted file mode 100755 index d459e0c1458c6d6108e71c588908dc8c29c60fc8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Inventory_inventoriateLocatedPieceTissu.py +++ /dev/null @@ -1,39 +0,0 @@ -## Script (Python) "Inventory_inventoriateLocatedPieceTissu" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -item_list = context.zGetLocatedPieceTissuList() -cr = '\r' -tab = '\t' -report = "Inventaire"+tab+"Resource_variantée"+tab+"Liste de pièces"+cr -item_dict = {} - -for item in item_list : - if not item.resource in item_dict.keys() : - item_dict[item.resource] = {} - if not item.variation in item_dict[item.resource].keys() : - item_dict[item.resource][item.variation] = [] - item_dict[item.resource][item.variation].append(item.id) - -for resource_key in item_dict.keys() : - for variation_key in item_dict[resource_key].keys() : - movement_list = context.Resource_zGetInventoryMovementList(resource_relative_url=resource_key,variation_relative_url=variation_key) - if len(movement_list) == 0 : - report += "pas d'inventaire"+tab+variation_key+tab+str(item_dict[resource_key][variation_key])+cr - else : - movement = movement_list[0].getObject() - if movement is not None : - movement.setItemIdList(item_dict[resource_key][variation_key]) - report += movement.getRelativeUrl()+tab+variation_key+tab+str(item_dict[resource_key][variation_key])+cr - else: - report += "None"+tab+variation_key+tab+str(item_dict[resource_key][variation_key])+cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return report diff --git a/product/Coramy/skins/coramy_mrp/Inventory_launchTissuInventoryBuilder.py b/product/Coramy/skins/coramy_mrp/Inventory_launchTissuInventoryBuilder.py deleted file mode 100755 index 0a27dc62979b7c62aaf48ace6ebce797441a2bcc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Inventory_launchTissuInventoryBuilder.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "Inventory_launchTissuInventoryBuilder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -supplier_list = context.zGetTissuSupplierList() -cr = '\r' -tab = '\t' -report = "Création d'inventaires en cours pour :" + cr - -for supplier_item in supplier_list : - supplier = supplier_item.getObject() - if supplier is not None : - supplier.activate().Inventory_tissuInventoryBuilder(supplier_list=[supplier.getTitle(),]) - report += supplier.getTitle()+cr - -return report diff --git a/product/Coramy/skins/coramy_mrp/Inventory_lookupPrice.py b/product/Coramy/skins/coramy_mrp/Inventory_lookupPrice.py deleted file mode 100755 index 3533d4496b509b34e6ff414616bde00b547e44c4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Inventory_lookupPrice.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "Inventory_lookupPrice" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return 2.0 diff --git a/product/Coramy/skins/coramy_mrp/Inventory_tissuInventoryBuilder.py b/product/Coramy/skins/coramy_mrp/Inventory_tissuInventoryBuilder.py deleted file mode 100755 index 57b27225fb0dab89a7a4f51eb20b66b35e6b620a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Inventory_tissuInventoryBuilder.py +++ /dev/null @@ -1,63 +0,0 @@ -## Script (Python) "Inventory_tissuInventoryBuilder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=product_reference_list=[], supplier_list=[] -##title=Add Lines to an Inventory -## -inventory_line_portal_type = "Inventory MP Line" -product_list = [] - -if len(product_reference_list) > 0 : - product_list += product_reference_list - supplier_list = [''] - -elif len(supplier_list) > 0 : - product_raw_list = context.Resource_sqlResourceSupplierSearch(supplier_title_list=supplier_list) - for product_item in product_raw_list : - product_list.append(product_item.title) - -if len(product_list) > 0 : - # build the inventory - inventory_module = context.getPortalObject().inventaire_mp - for supplier in supplier_list : - # create inventory - new_inventory_id = str(inventory_module.generateNewId()) - my_categories = ['destination/site/Stock_MP/Gravelines','destination_section/group/Coramy'] - context.portal_types.constructContent(type_name = 'Inventory MP', - container = inventory_module, - id = new_inventory_id, - description = supplier, - start_date = DateTime(), - categories = my_categories) - inventory = inventory_module[new_inventory_id] - -for line_product in product_list : - - new_id = str(inventory.generateNewId()) - inventory.portal_types.constructContent(type_name=inventory_line_portal_type, - container=inventory, - id=new_id) - inventory_line = inventory[new_id] - resource_list = context.portal_catalog(id=line_product, portal_type='Tissu') - if len(resource_list) > 0: - resource_value = resource_list[0].getObject() - if resource_value is not None: - - if resource_value.getPortalType() == 'Tissu' : - my_variation_base_category_list = ['coloris'] - else : - my_variation_base_category_list = [] - - inventory_line.edit(description=line_product , - resource_value = resource_value, - variation_base_category_list = my_variation_base_category_list) - my_variation_category_list = [] - for category_tuple in inventory_line.getVariationRangeCategoryItemList() : - my_variation_category_list.append(category_tuple[0]) - inventory_line.setVariationCategoryList(my_variation_category_list) - - else: - inventory_line.edit(description=line_product) diff --git a/product/Coramy/skins/coramy_mrp/MovementMP_fastInput.py b/product/Coramy/skins/coramy_mrp/MovementMP_fastInput.py deleted file mode 100755 index 2473b765ff448474859c8a9db15e3db7f6300b6e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/MovementMP_fastInput.py +++ /dev/null @@ -1,63 +0,0 @@ -## Script (Python) "MovementMP_fastInput" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=product_reference_list=[], supplier_list=[] -##title=Add Lines to a movement -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -inventory_line_portal_type = "Movement MP Line" -product_list = [] -request=context.REQUEST - -try: - - if product_reference_list <> '' : - product_list += product_reference_list - - if len(supplier_list) > 0 : - product_raw_list = context.Resource_sqlResourceSupplierSearch(supplier_title_list=supplier_list) - for product_item in product_raw_list : - product_list.append(product_item.title) - - for line_product in product_list : - - new_id = str(context.generateNewId()) - context.portal_types.constructContent(type_name=inventory_line_portal_type, - container=context, - id=new_id) - resource_list = context.portal_catalog(title=line_product, portal_type=('Tissu','Composant'), Title=line_product) - if len(resource_list) > 0: - resource_value = resource_list[0].getObject() - if resource_value is not None: - - if resource_value.getPortalType() == 'Tissu' : - my_variation_base_category_list = ['coloris'] - elif resource_value.getPortalType() == 'Composant' : - my_variation_base_category_list = ['variante'] - else : - my_variation_base_category_list = [] - - context[new_id].edit(description=line_product , - resource_value = resource_value, - variation_base_category_list = my_variation_base_category_list ) -# my_variation_category_list = [] -# for category_tuple in context[new_id].getVariationRangeCategoryItemList() : -# my_variation_category_list.append(category_tuple[0]) -# context[new_id].setVariationCategoryList(my_variation_category_list) - else: - context[new_id].edit(description=line_product) - context.Folder_reindexAll() -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=Data+Updated.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/MovementMP_fastInputForm.form b/product/Coramy/skins/coramy_mrp/MovementMP_fastInputForm.form deleted file mode 100755 index fc5205c44278e5f6e74fe246c69cac13ff1001e7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/MovementMP_fastInputForm.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>Movement Fast Input</name> - <pt>form_dialog</pt> - <action>MovementMP_fastInput</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_supplier_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Fournisseurs</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.Resource_getSupplierItemList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_product_reference_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">15</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Produits à mouvementer</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/MovementPF_fastInput.py b/product/Coramy/skins/coramy_mrp/MovementPF_fastInput.py deleted file mode 100755 index 4685a6a942e423499d2c8f0fb7a729861b9172e5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/MovementPF_fastInput.py +++ /dev/null @@ -1,56 +0,0 @@ -## Script (Python) "MovementPF_fastInput" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=product_reference_list=[], supplier_list=[] -##title=Add Lines to a movement -## -from Products.Formulator.Errors import ValidationError, FormValidationError - -inventory_line_portal_type = "Movement PF Line" -product_list = [] -request=context.REQUEST - -try: - - if product_reference_list <> '' : - product_list += product_reference_list - - for line_product in product_list : - - new_id = str(context.generateNewId()) - context.portal_types.constructContent(type_name=inventory_line_portal_type, - container=context, - id=new_id) - resource_list = context.portal_catalog(title=line_product, portal_type=('Modele','Assortiment'), Title=line_product) - if len(resource_list) > 0: - resource_value = resource_list[0].getObject() - if resource_value is not None: - - if resource_value.getPortalType() == 'Modele' : - my_variation_base_category_list = ['coloris'] - else : - my_variation_base_category_list = [] - - context[new_id].edit(description=line_product , - resource_value = resource_value, - variation_base_category_list = my_variation_base_category_list ) -# my_variation_category_list = [] -# for category_tuple in context[new_id].getVariationRangeCategoryItemList() : -# my_variation_category_list.append(category_tuple[0]) -# context[new_id].setVariationCategoryList(my_variation_category_list) - else: - context[new_id].edit(description=line_product) - context.Folder_reindexAll() -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=Data+Updated.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/MovementPF_fastInputForm.form b/product/Coramy/skins/coramy_mrp/MovementPF_fastInputForm.form deleted file mode 100755 index 7af459da76646e6491742dabbdb7b41f9bd1bf2a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/MovementPF_fastInputForm.form +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>Movement Fast Input</name> - <pt>form_dialog</pt> - <action>MovementPF_fastInput</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_product_reference_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">15</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Produits à mouvementer</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Movement_list.form b/product/Coramy/skins/coramy_mrp/Movement_list.form deleted file mode 100755 index 471403ba7331734ebc8593c9854019098d19ae7e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Movement_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des commandes</title> - <row_length>4</row_length> - <name>order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_destination_section_title', 'Destination Section'), ('resource_title', 'Resource'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Commande'), ('default_destination_section_title', 'Destination Section'), ('resource_title', 'Resource'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Simulation Movement', 'Simulation Movement')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>movement_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Commandes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInput.py b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInput.py deleted file mode 100755 index 1ded3b86b4e1ea5e664ae35798eb369564028640..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInput.py +++ /dev/null @@ -1,117 +0,0 @@ -## Script (Python) "PieceTissu_fastInput" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=piece_tissu_list -##title= -## -# creates Piece Tissu items -from Products.Formulator.Errors import ValidationError, FormValidationError - -text_list = context.PieceTissu_fastInputList()[0] - -if context.getPortalType() == 'Piece Tissu' : # we create a sub_item - my_container = context -else : # we create a master_item - my_container = context.getPortalObject().piece_tissu - -my_quantity = None -request = context.REQUEST -compteur = 0 -created_item_id_list = [] - -try : - - for line in piece_tissu_list : - - if line.find(text_list[0]) <> (-1) : # quantity - # create previous item - # first check if needed if quantity compatible with parent_item - if my_quantity is not None and my_container.getPortalType() == 'Piece Tissu' : - if my_quantity >= my_container.getRemainingQuantity() : - my_quantity = None - if my_quantity is not None : - compteur += 1 - new_id = str(my_container.generateNewId(default = 40000)) - my_container.portal_types.constructContent(type_name = 'Piece Tissu', - container = my_container, - quantity = my_quantity, - laize_utile = my_laize_utile, - source_reference = my_source_reference, - bain_teinture = my_bain_teinture, - comment = my_comment, - id=new_id) - if context.getPortalType() == 'Delivery Cell' or context.getPortalType() == 'Inventory Cell' : - my_container[new_id].edit(resource_value = context.getResource(), - source_value = context.getSource(), - variation_category_list = context.getVariationCategoryList()) - my_container[new_id].flushActivity(invoke=1) - # print label - my_container[new_id].PieceTissu_printMetoLabel() - created_item_id_list.append(new_id) - - # initialize new piece - my_quantity = None - my_laize_utile = None - my_source_reference = None - my_bain_teinture = None - my_comment = None - - # find quantity value - input_items = line.split('_:') - if len(input_items) > 1 : - if input_items[1] <> '' : - my_quantity = float(input_items[1].replace(',','.')) - else : - break - - elif line.find(text_list[1]) <> (-1) : # laize_utile - input_items = line.split('_:') - if len(input_items) > 1 : - if input_items[1] <> '' : - my_laize_utile = float(input_items[1].replace(',','.')) - - elif line.find(text_list[2]) <> (-1) : # no fournisseur - input_items = line.split('_:') - if len(input_items) > 1 : - if input_items[1] <> '' : - my_source_reference = input_items[1] - - elif line.find(text_list[3]) <> (-1) : # bain teinture - input_items = line.split('_:') - if len(input_items) > 1 : - if input_items[1] <> '' : - my_bain_teinture = input_items[1] - - elif line.find(text_list[4]) <> (-1) : # comment - input_items = line.split('_:') - if len(input_items) > 1 : - if input_items[1] <> '' : - my_comment = input_items[1] - - # if we create items on a delivery cell or inventory cell - # we update item_id_list or produced_item_id_list - if context.getPortalType() == 'Delivery Cell' or context.getPortalType() == 'Inventory Cell' : - if context.aq_parent.getPortalType() in ('Movement MP Line', 'Movement PF Line') or context.getPortalType() in ('Movement MP Line', 'Movement PF Line'): - if context.getItemIdList() is not None : - context.setProducedItemIdList(created_item_id_list+context.getItemIdList()) - else : - context.setProducedItemIdList(created_item_id_list) - else: - if context.getItemIdList() is not None : - context.setItemIdList(created_item_id_list+context.getItemIdList()) - else : - context.setItemIdList(created_item_id_list) - -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+pièces+créées.' % compteur - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputFieldRender.py b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputFieldRender.py deleted file mode 100755 index 4d879d3be021c1494c0adb9a3e45feef2b547075..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputFieldRender.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "PieceTissu_fastInputFieldRender" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -fast_input_list = context.PieceTissu_fastInputList()[0] -formatted_text = [] - -for i in range (11) : - formatted_text.append( 'Piece n° '+str(i+1)) - for text in fast_input_list : - formatted_text.append(text+':') - formatted_text.append('') - -return formatted_text diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputForm.form b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputForm.form deleted file mode 100755 index e41e00ca4a3587750142192ebcdf8ddb9d20215e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputForm.form +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>PieceTissu_fastInputForm</name> - <pt>form_dialog</pt> - <action>PieceTissu_fastInput</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_piece_tissu_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">25</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces à créer</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - <default>python:here.PieceTissu_fastInputFieldRender()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputList.py b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputList.py deleted file mode 100755 index e2b1565aaabee4c14a085b177713204d6bcbdd6e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputList.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "PieceTissu_fastInputList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -text_list = ['Quantité (m)_______________', 'Laize utile (cm)___________', 'N° fournisseur_____________', 'N° de bain de teinture_____', 'Commentaires______________'] -property_list = ['quantity', 'laize_utile', 'source_reference', 'bain_teinture', 'comment'] - -fast_input_list =[text_list,property_list] - -return fast_input_list diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocation.py b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocation.py deleted file mode 100755 index f5b29f71844bc22a32c71cbc265d89469383af7d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocation.py +++ /dev/null @@ -1,42 +0,0 @@ -## Script (Python) "PieceTissu_fastInputLocation" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=id_and_location_list=[] -##title= -## -# updates location property for all given items -from Products.Formulator.Errors import ValidationError, FormValidationError - -request = context.REQUEST -compteur = 0 - -try : - - item_nb = int(len(id_and_location_list)/2) - for i in range(item_nb) : - item_result_list = context.portal_catalog(id = str(int(id_and_location_list[i*2])), portal_type="Piece Tissu") - try : - item = item_result_list[0].getObject() - location = id_and_location_list[i*2+1] - except : - item = None - location = None - - if item is not None and location is not None : - item.setLocation(location) - item.flushActivity(invoke=1) - compteur += 1 - -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+emplacements+mis+à+jour.' % compteur - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocationForm.form b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocationForm.form deleted file mode 100755 index cda571dfb384d03f8c6a1c3912c1749c0c38dda1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputLocationForm.form +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisir emplacements</title> - <row_length>4</row_length> - <name>PieceTissu_fastInputLocationForm</name> - <pt>form_dialog</pt> - <action>PieceTissu_fastInputLocation</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id_and_location_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">25</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces et emplacements</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetour.py b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetour.py deleted file mode 100755 index 9ca4f74bbc38fa60e0c17b3467a281ed78973e3c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetour.py +++ /dev/null @@ -1,111 +0,0 @@ -## Script (Python) "PieceTissu_fastInputRetour" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=id_and_weight_list=[] -##title= -## -# updates location property for all given items -from Products.Formulator.Errors import ValidationError, FormValidationError - -request = context.REQUEST -compteur = 0 -error_item_list = [] - -try : - - item_nb = int(len(id_and_weight_list)/2) - for i in range(item_nb) : - item_result_list = context.portal_catalog(id = str(int(id_and_weight_list[i*2])), portal_type="Piece Tissu") - try : - item = item_result_list[0].getObject() - except : - item = None - try : - weight = float(id_and_weight_list[i*2+1].replace(',','.')) - except : - weight = None - - if item is not None : - if weight is not None : - # find the delivery_cell_movements in relation with the item - cell_movement_list = item.getAggregateRelatedValueList(portal_type=['Delivery Cell','Inventory Cell']) - # keep only production movements and outgoing movements - movement_list = [] - for movement in cell_movement_list : - if movement.aq_parent.getPortalType() == 'Production Packing List Line' : - movement_list.append(movement) - elif movement.aq_parent.getPortalType() == 'Movement MP Line' and movement.getConsumptionQuantity() > 0 : - movement_list.append(movement) - # add Production packing List Line movements in relation with the item - movement_list+=item.getAggregateRelatedValueList(portal_type=['Production packing List Line']) - - # movement_list should contain only one movement - if len(movement_list) == 1 : - aggregated_item_list = movement_list[0].getAggregateValueList() - new_aggregated_item_id_list = [] - for aggregate_item in aggregated_item_list : - if aggregate_item.getId() <> item.getId() : - new_aggregated_item_id_list.append(aggregate_item.getId()) - - # now build the new item - # first compute the quantity of the new item - try : - tissu = item.getResourceValue() - quantity = item.getRemainingQuantity()-(weight/((tissu.getLaizeTotale()/100)*(tissu.getBaseWeight()/1000))) - except : - quantity = 0 - - if quantity < 0 : - error_item_list.append(id_and_weight_list[i*2]+'(quantité trop importante)') - elif not quantity in (0, 0.0, '0') : - # create the new item - new_id = str(item.generateNewId(default = 40000)) - item.portal_types.constructContent(type_name = 'Piece Tissu', - container = item, - quantity = quantity, - laize_utile = item.getLaizeUtile(), - source_reference = item.getSourceReference(), - bain_teinture = item.getBainTeinture(), - id=new_id) - item[new_id].flushActivity(invoke=1) - - # reset location on returned item - item.edit(location='') - - # append new_id to new_aggregate_item_id_list and build relation with movement - new_aggregated_item_id_list.append(new_id) - if movement_list[0].aq_parent.getPortalType() in ('Movement MP Line', 'Movement PF Line') or movement_list[0].getPortalType() in ('Movement MP Line', 'Movement PF Line') : - movement_list[0].setConsumedItemIdList(new_aggregated_item_id_list) - else : - movement_list[0].setItemIdList(new_aggregated_item_id_list) - compteur += 1 - else : - error_item_list.append(id_and_weight_list[i*2]+'(conversion kg mètre impossible)') - else : - error_item_list.append(id_and_weight_list[i*2]+'(non sortie ou plusieurs sorties)') - else : - error_item_list.append(id_and_weight_list[i*2]+'(quantité mal définie)') - else : - error_item_list.append(id_and_weight_list[i*2]+'(inconnue)') - -except FormValidationError, validation_errors: - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=La+saisie+a+échoué.' - ) -else: - if len(error_item_list) == 0 : # no errors - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+pièces+créées.' % compteur - ) - else : - pretty_error_list = '' - for error_item in error_item_list : - pretty_error_list += error_item + ' ' - redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+pièces+créées.+Problèmes+:+%s.' % (compteur, - pretty_error_list)) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetourForm.form b/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetourForm.form deleted file mode 100755 index 0e0c1576cd0f921f5f070b273cbfb742f20546f3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_fastInputRetourForm.form +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisir les retours</title> - <row_length>4</row_length> - <name>PieceTissu_fastInputRetourForm</name> - <pt>form_dialog</pt> - <action>PieceTissu_fastInputRetour</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id_and_weight_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">25</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces et poids</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_importFile.py b/product/Coramy/skins/coramy_mrp/PieceTissu_importFile.py deleted file mode 100755 index c9d173da5d0f5e61a576220de29886750506cb1c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_importFile.py +++ /dev/null @@ -1,86 +0,0 @@ -## Script (Python) "PieceTissu_importFile" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=import_file, **kw -##title= -## -# import des pièces de tissu depuis Cognis -# format de fichier attendu -# id, code tissu Cognis, coloris, no fournisseur, qté, laize, no bain, emplacement, commentaires - -request = context.REQUEST -file_line_list = import_file.readlines() -item_module = context.getPortalObject().piece_tissu - -for file_line in file_line_list : - sub_line_list = file_line.split('\r') - for sub_line in sub_line_list : - if sub_line != '': - - # create a new item - line_item_list = sub_line.split('\t') - - # recup Id - if len(line_item_list) > 0 : - my_id = line_item_list[0] - else : - my_id = str(item_module .generateNewId()) - - # recup reference_fournisseur - if len(line_item_list) > 3 : - my_source_reference = line_item_list[3] - else : - my_source_reference = None - - # recup quantité - if len(line_item_list) > 4 : - my_quantity = float(line_item_list[4].replace(',','.')) - else : - my_quantity = None - - # recup laize utile - if len(line_item_list) > 5 : - my_laize_utile = float(line_item_list[5].replace(',','.')) - else : - my_laize_utile = None - - # recup no bain teinture - if len(line_item_list) > 6 : - my_bain_teinture = line_item_list[6] - else : - my_bain_teinture = None - - # recup emplacement - if len(line_item_list) > 7 : - my_location = line_item_list[7] - else : - my_location = None - - # recup commentaires - if len(line_item_list) > 8 : - my_comment = 'ancien code : '+line_item_list[1]+' '+line_item_list[2]+'\r'+''.join(line_item_list[7:]) - else : - my_comment = None - -# print my_id, my_source_reference, my_quantity, my_laize_utile, my_location - context.portal_types.constructContent(type_name = 'Piece Tissu', - container = item_module, - id = my_id, - source_reference = my_source_reference, - quantity = my_quantity, - laize_utile = my_laize_utile, - bain_teinture = my_bain_teinture, - location = my_location, - comment = my_comment ) - item_module[my_id].flushActivity(invoke=1) - -#return printed - -redirect_url = '%s?%s' % ( item_module.absolute_url() - , 'portal_status_message=%s+pièces+de+tissu+créées.' % len(sub_line_list) - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_importForm.form b/product/Coramy/skins/coramy_mrp/PieceTissu_importForm.form deleted file mode 100755 index bc671d1055107d6e73cbdd024ca59e6ee1f55fc9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_importForm.form +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Importer</title> - <row_length>4</row_length> - <name>PieceTissu_importForm</name> - <pt>form_dialog</pt> - <action>PieceTissu_importFile</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_import_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier à importer</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_movementListView.form b/product/Coramy/skins/coramy_mrp/PieceTissu_movementListView.form deleted file mode 100755 index 68822cf7a163d268d69f53e9fa85a2536a5616d2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_movementListView.form +++ /dev/null @@ -1,345 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Pièce de tissu</title> - <name>item_tissu_view</name> - <action>base_edit</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° de pièce</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_resource_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>tissu</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Tissu', 'Tissu')]</portal_type> - <required type="int">0</required> - <title>Tissu</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Coloris</title> - </values> - <tales> - <default>python:here.getVariationCategoryList()[0]</default> - <items>python:[('','')]+here.getVariationRangeCategoryItemList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_laize_utile</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Laize utile (cm)</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_location</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Emplacement</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Fournisseur</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° pièce fournisseur</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_bain_teinture</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° bain teinture</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité initiale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_remaining_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité restante</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('relative_url', 'Mouvement'), ('portal_type', 'Type'), ('start_date', 'Date exp\xe9dition'), ('source_title', 'Exp\xe9diteur'), ('stop_date', 'Date Livraison'), ('destination_title', 'Destinataire'), ('quantity', 'Quantit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">PieceTissu_zGetAggregateRelatedMovementList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>item_related_delivery_selection</selection_name> - <sort type="list">[]</sort> - <stat_method></stat_method> - <title>Mouvements</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_printMetoLabel.py b/product/Coramy/skins/coramy_mrp/PieceTissu_printMetoLabel.py deleted file mode 100755 index a0e753326a963da6ce38fe46d15c8e59531409c0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_printMetoLabel.py +++ /dev/null @@ -1,52 +0,0 @@ -## Script (Python) "PieceTissu_printMetoLabel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -from Products.Coramy.MetoAPI import selectMeter, startFormat, setDecoration, setPrintSpeed, setPaperSpeed, setPixel, setTemparature, setNumber, endFormat, printText, printLine, printFrame - -raw_string = '' -item = context -printer_name = 'Meto_XS40' - -try : - item_id = item.getResourceValue().getTitle() - title_items = item.getColoris().split('/') - if len(title_items) > 0 : - item_title = title_items[len(title_items)-1][0:min(len(title_items[len(title_items)-1]),12)] - else : - item_title = '' -except : - item_id = ' ' - item_title = ' ' -item_code = item.getId() -item_code = '0'*(6-len(item_code))+item_code - -# Printing protocol starts here -# first set some parameters -raw_string += selectMeter() -#raw_string += setDecoration(1) -raw_string += startFormat() -raw_string += setPrintSpeed() -raw_string += setPaperSpeed() -raw_string += setPixel() -raw_string += setTemparature() - -# then design the label -raw_string += printText(1, "9", 1, 1, 4, 10, 20, item_id, 10) -raw_string += printText(1, "9", 1, 1, 3, 2, 14, item_title, 10) -raw_string += printText(1, "d", 8, 2, 80, 4, 5, item_code, 10) -raw_string += printText(4, "d", 8, 2, 80, 36, 5, item_code, 10) -raw_string += printText(1, "9", 1, 1, 3, 7, 1, item_code, 10) -raw_string += printText(4, "9", 1, 1, 3, 40, 9, item_code, 10) - -# set the quentity to print -raw_string += setNumber() -raw_string += endFormat() - -# send data to printer -context.sendRawToCups(printer_name, raw_string) diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_resetTargetQuantityOnUnaggregatedMovementList.py b/product/Coramy/skins/coramy_mrp/PieceTissu_resetTargetQuantityOnUnaggregatedMovementList.py deleted file mode 100755 index 50c0a85b987f0875b4367b70c32508d9dc7dd5e5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_resetTargetQuantityOnUnaggregatedMovementList.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "PieceTissu_resetTargetQuantityOnUnaggregatedMovementList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=delivery_uid -##title= -## -movement_list = context.PieceTissu_zGetUnaggregatedTissuMovementList(uid=delivery_uid) - -for movement_item in movement_list : - movement = movement_item.getObject() - if movement is not None: - movement.Movement_resetTargetQuantity() diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_searchByResource.form b/product/Coramy/skins/coramy_mrp/PieceTissu_searchByResource.form deleted file mode 100755 index 05cdccf723488d9b71649f04c6814c9239338091..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_searchByResource.form +++ /dev/null @@ -1,170 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>PieceTissu_searchResource</name> - <pt>form_view_dialog</pt> - <action>Base_searchHandler</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_resource_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Tissus</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>PieceTissu_zGetAvailableItemList</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variante_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_updateResourceAfterInventory.py b/product/Coramy/skins/coramy_mrp/PieceTissu_updateResourceAfterInventory.py deleted file mode 100755 index 9ebbd11ab596228d6b11d2763ab0659729d60bfc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_updateResourceAfterInventory.py +++ /dev/null @@ -1,33 +0,0 @@ -## Script (Python) "PieceTissu_updateResourceAfterInventory" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -item_list = context.PieceTissu_zGetInventorized() -compteur = 0 - -for item in item_list : - compteur+=1 - item_object = item.getObject() - if item_object is not None: - movement_list = item_object.getAggregateRelatedValueList() - if len(movement_list) == 1 : - movement = movement_list[0] - item_object.edit(resource_value = movement.getResource(), - source_value = movement.getResourceValue().getSource(), - variation_category_list = movement.getVariationCategoryList()) -# if movement.getColoris() is not None : -# print str(item_object.getId())+' : '+str(movement.getResource())+" "+str(movement.getColoris())+" "+str(movement.getResourceValue().getSource()) -# else : -# print str(item_object.getId())+' : '+str(movement.getResource())+" "+str(movement.getVariante())+" "+str(movement.getResourceValue().getSource()) - else : - print str(item_object.getId())+' : Problème' - else : - print str(item)+' : Problème' - -print str(compteur) -return printed diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetAggregateRelatedMovementList.zsql b/product/Coramy/skins/coramy_mrp/PieceTissu_zGetAggregateRelatedMovementList.zsql deleted file mode 100755 index 186c6c44bfb6ee2314ca7f938e928ac3bdfb08c9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetAggregateRelatedMovementList.zsql +++ /dev/null @@ -1,24 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid</params> -SELECT DISTINCT delivery.relative_url, delivery.path, delivery.portal_type, movement.start_date, movement.quantity, movement.inventory, movement.stop_date, source_node.title as source_title, destination_node.title as destination_title -FROM catalog, catalog as piece_tissu, catalog as delivery, category, movement -LEFT JOIN catalog as source_node ON source_node.uid = movement.source_uid -LEFT JOIN catalog as destination_node ON destination_node.uid = movement.destination_uid -WHERE catalog.uid=category.uid -AND piece_tissu.uid = category.category_uid -AND piece_tissu.portal_type = "Piece Tissu" -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.uid"> -AND movement.uid = catalog.uid -AND delivery.uid = movement.delivery_uid -<dtml-if uid> -AND piece_tissu.uid = <dtml-sqlvar uid type="int"> -</dtml-if> -ORDER BY movement.stop_date DESC, movement.start_date DESC \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetInventorized.zsql b/product/Coramy/skins/coramy_mrp/PieceTissu_zGetInventorized.zsql deleted file mode 100755 index 62b70ed717f4f39e69f5b4eb62c0878370210d1f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetInventorized.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT - item.uid, item.Id, item.path, item.Description -FROM - catalog AS item, category -WHERE - item.portal_type = "Piece Tissu" -AND - category.category_uid = item.uid -AND - category.base_category_uid = <dtml-var "portal_categories.aggregate.uid"> - diff --git a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetUnaggregatedTissuMovementList.zsql b/product/Coramy/skins/coramy_mrp/PieceTissu_zGetUnaggregatedTissuMovementList.zsql deleted file mode 100755 index 57f6a7a134c29fb7fc30c41ccc886765554ca7b3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PieceTissu_zGetUnaggregatedTissuMovementList.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid</params> -SELECT DISTINCT catalog.relative_url, catalog.path -FROM catalog, catalog as resource, catalog as delivery, movement -LEFT JOIN category -ON (category.uid=movement.uid -AND category.base_category_uid = <dtml-var "portal_categories.aggregate.uid">) -WHERE movement.uid = catalog.uid -AND movement.target_quantity <> 0 -AND category.uid IS NULL -AND movement.is_accountable = 1 -AND resource.uid = movement.resource_uid -AND resource.portal_type = "Tissu" -AND delivery.uid = movement.delivery_uid -AND delivery.uid = <dtml-var uid> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/PortalSimulation_activateRequirementList.py b/product/Coramy/skins/coramy_mrp/PortalSimulation_activateRequirementList.py deleted file mode 100755 index a1f0c2187c8e709a02cbb3dd28102c55e9b9e8e1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PortalSimulation_activateRequirementList.py +++ /dev/null @@ -1,48 +0,0 @@ -## Script (Python) "PortalSimulation_activateRequirementList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -if 1: - # Erase existing auto_planned - order_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.ordre_fabrication.getUid()]) - order_id_list = map(lambda x:x.id,order_list) - object_id_list = context.ordre_fabrication.objectIds() - order_id_list = filter(lambda x: x in object_id_list, order_id_list) - context.ordre_fabrication.deleteContent(order_id_list) - - order_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.commande_achat.getUid()]) - order_id_list = map(lambda x:x.id,order_list) - object_id_list = context.commande_achat.objectIds() - order_id_list = filter(lambda x: x in object_id_list, order_id_list) - context.commande_achat.deleteContent(order_id_list) - -#return "Done" - -# Stock sourcing states -source_state_list = ('auto_planned', 'planned', 'ordered', 'confirmed', 'getting_ready', 'ready', 'started', 'stopped', 'delivered', 'invoiced') -#source_state_list = None - -# Get inventory list -inventory_list = context.SimulationTool_getGroupFutureInventoryList(simulation_state=source_state_list) -# Commit SQL -# context.portal_simulation.commitTransaction() - -# Call PortalSimulation_buildRequirementOrder for each missing resource -for inventory_item in inventory_list: - if inventory_item.inventory < 0 and inventory_item.inventory is not None: - # We should use a queue here rather than a dict - OVERKILL - movement = inventory_item.getObject() - if movement is not None: - resource = movement.getResourceValue() - if resource is not None: - if resource.getPortalType() != "Assortiment": - # Only source negative stock - print "Activate Build Order for %s for missing quantity %s" % (inventory_item.resource_relative_url, inventory_item.inventory) - resource.activate(priority=2).PortalSimulation_buildRequirementOrder(resource=inventory_item.resource_relative_url) - -return printed diff --git a/product/Coramy/skins/coramy_mrp/PortalSimulation_buildRequirementOrder.py b/product/Coramy/skins/coramy_mrp/PortalSimulation_buildRequirementOrder.py deleted file mode 100755 index 050d3042738e367d97a9749e5581ee7e4cb43b74..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PortalSimulation_buildRequirementOrder.py +++ /dev/null @@ -1,95 +0,0 @@ -## Script (Python) "PortalSimulation_buildRequirementOrder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=resource=None -##title= -## -from Products.ERP5.Document import newTempMovement -from DateTime import DateTime - -# Stock sourcing states -source_state_list = ('auto_planned', 'planned', 'ordered', 'confirmed', 'getting_ready', 'ready', 'delivered', 'started', 'stopped', 'invoiced') -#source_state_list = None - -# Default date -now_date = DateTime(DateTime().Date()) - -# Get inventory list -inventory_list = context.SimulationTool_getGroupFutureInventoryList(resource=resource, simulation_state=source_state_list) -# Commit SQL -context.portal_simulation.commitTransaction() - -# First, find out which resources are missing -# and build a dictionnary of quantity, variation -quantity_dict = {} -variation_dict = {} -for inventory_item in inventory_list: - if inventory_item.inventory < 0 and inventory_item.inventory is not None: - # Only source negative stock - movement = inventory_item.getObject() - if movement is not None: - key = (inventory_item.resource_relative_url, tuple(movement.getVariationCategoryList())) - quantity_dict[key] = - inventory_item.inventory - variation_dict[key] = movement.getVariationCategoryList() - else: - pass - #LOG('ZeroStockRule WARNING',0,'None movement found') - -# Commit SQL -context.portal_simulation.commitTransaction() - -# A list of resources to create -to_create = quantity_dict.keys() -movement_list = [] - -new_id = 0 -# Create movements which are needed -for relative_url, variation_category_list in to_create: - # CHECK IF EXISTING ID - key = (relative_url, variation_category_list) - new_id += 1 - movement = newTempMovement( context.portal_simulation , str(new_id) ) - movement.edit( resource=relative_url ) - movement.setVariationCategoryList( variation_category_list ) - resource = movement.getResourceValue() - - if resource is not None: - # Only order existing resources - stop_date = resource.getNextNegativeInventoryDate(variation_text = movement.getVariationText()) - if stop_date is None: # This happens if we have a negative stock already - stop_date = now_date - - if resource.getPortalType() in ('Modele',): - source = 'site/Piquage' - source_section = 'group/Coramy' - destination_section = 'group/Coramy' - destination = 'site/Stock_PF/Gravelines' - else: - source = source_section = resource.getSource() - destination_section = 'group/Coramy' - destination = 'site/Stock_MP/Gravelines' - movement.edit(target_quantity = quantity_dict[key], - target_start_date = stop_date, - target_stop_date = stop_date, - source = source, - source_section = source_section, - destination_section = destination_section, - destination = destination, - quantity_unit = resource.getDefaultQuantityUnit()) - print "Order %s %s quantity: %s" % (movement.getResource(), movement.getVariationText(), movement.getNetConvertedTargetQuantity()) - movement_list.append(movement) - -# Build Order -root_group = context.portal_simulation.collectMovement(movement_list) -order_list = context.portal_simulation.buildOrderList(root_group) - -# Update orders -for order in order_list: - print "Confirm Order %s" % order.getRelativeUrl() - order.autoPlan() - order.purchase_order_apply_condition() - -return printed diff --git a/product/Coramy/skins/coramy_mrp/PortalSimulation_fixDeliveryRule.py b/product/Coramy/skins/coramy_mrp/PortalSimulation_fixDeliveryRule.py deleted file mode 100755 index dd061c0e25585e7a72f1bcf0ef69d6c30e2ff9af..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PortalSimulation_fixDeliveryRule.py +++ /dev/null @@ -1,37 +0,0 @@ -## Script (Python) "PortalSimulation_fixDeliveryRule" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_id = {} -delivery_list = [] - -for m in context.objectValues(): - id = '_'.join(m.getId().split('_')[0:4]) - if m.getDelivery() is not None: - delivery = m.getDeliveryValue() - delivery_id[id] = m.getDelivery() - else: - delivery_list.append(m) - m.setOrder(delivery_id[id]) - print "%s %s %s" % (id, m.getRelativeUrl(), delivery_id[id]) - - -# Build deliveries -movement_group = context.portal_simulation.collectMovement(delivery_list) -delivery_list = context.portal_simulation.buildDeliveryList(movement_group) - -# Change workflow state -for new_delivery in delivery_list : - # Copy local roles - for k, v in delivery.get_local_roles(): - new_delivery.manage_addLocalRoles(k,v) - # update the state of the created deliveries to 'confirmed' - #new_delivery.confirm() - print "Created delivery %s" % new_delivery.getId() - -return printed diff --git a/product/Coramy/skins/coramy_mrp/PortalSimulation_updateAssetPrice.py b/product/Coramy/skins/coramy_mrp/PortalSimulation_updateAssetPrice.py deleted file mode 100755 index be9f9b004923817a97a9de4dced5abab0a17cce8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/PortalSimulation_updateAssetPrice.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "PortalSimulation_updateAssetPrice" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -active_process = context.portal_activities.newActiveProcess(title="Calcul test de valorisation du stock") - -result = context.portal_simulation.activate(activity='SQLQueue', priority=3, active_process = active_process ).updateAssetPrice( - "modele/417P401", - """coloris/modele/417P401/1_espace_stuc -taille/enfant/10 ans""", - "group/Coramy", - "site/Stock_PF" - ) - -#for i in result: -# print ' '.join(map(lambda x:str(x), i)) -print repr(result) - - -return printed diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedConsumptionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedConsumptionList.py deleted file mode 100755 index faf52106697695911495476864b5de283800366b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedConsumptionList.py +++ /dev/null @@ -1,14 +0,0 @@ -## Script (Python) "ProductionOrder_getAggregatedConsumptionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -result = context.ProductionOrder_zGetAggregatedMaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) -result += context.ProductionOrder_zGetAggregatedImmaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) -return result diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedImmaterialConsumptionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedImmaterialConsumptionList.py deleted file mode 100755 index 97fe3e245b366953d764481a8cdaae51d45ee745..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedImmaterialConsumptionList.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "ProductionOrder_getAggregatedImmaterialConsumptionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -if len(movement_uid_list) > 0 : - return context.ProductionOrder_zGetAggregatedImmaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) -else : - return [] diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialConsumptionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialConsumptionList.py deleted file mode 100755 index 7510c6c377e5d5443f8fb63a8561a25db031b4b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialConsumptionList.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "ProductionOrder_getAggregatedMaterialConsumptionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -if len(movement_uid_list) > 0 : - return context.ProductionOrder_zGetAggregatedMaterialConsumptionList(order_related_movement_uid_list = movement_uid_list, - query=kw.get('query', None), - at_date=context.getStartDate().Date()) -else : - return [] diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialProductionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialProductionList.py deleted file mode 100755 index 9ce5da45fc092a7e9262367e4b01e185eaad0ac0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialProductionList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "ProductionOrder_getAggregatedMaterialProductionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return context.ProductionOrder_zGetAggregatedMaterialProductionList(order_related_movement_uid_list = movement_uid_list) diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialSourcingList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialSourcingList.py deleted file mode 100755 index 1bf0ef529badeee5e0c6ab5d59dbf9523a55c99d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getAggregatedMaterialSourcingList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "ProductionOrder_getAggregatedMaterialSourcingList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return map(lambda o: o.getRelativeUrl(), context.ProductionOrder_zGetAggregatedMaterialSourcingList(order_related_movement_uid_list = movement_uid_list)) diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getConsumptionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getConsumptionList.py deleted file mode 100755 index 99080d8b7766893da9cb889776b11506f4eccc02..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getConsumptionList.py +++ /dev/null @@ -1,14 +0,0 @@ -## Script (Python) "ProductionOrder_getConsumptionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -result = context.ProductionOrder_zGetMaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) -result += context.ProductionOrder_zGetImmaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) -return result diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialConsumptionList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialConsumptionList.py deleted file mode 100755 index 233a0f786e20d36186ec558c5e03cf648f6a5f78..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialConsumptionList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "ProductionOrder_getMaterialConsumptionList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return context.ProductionOrder_zGetMaterialConsumptionList(order_related_movement_uid_list = movement_uid_list) diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialProductionMovementList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialProductionMovementList.py deleted file mode 100755 index 9e94fc0f5420e64097d76c915a43c3a46a62a7d8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialProductionMovementList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "ProductionOrder_getMaterialProductionMovementList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return map(lambda o: o.getObject(), context.ProductionOrder_zGetMaterialProductionMovementList(order_related_movement_uid_list = movement_uid_list)) diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialSourcingMovementList.py b/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialSourcingMovementList.py deleted file mode 100755 index 233e8d207188f6bfd27bdc395ce2292a8da5db37..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_getMaterialSourcingMovementList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "ProductionOrder_getMaterialSourcingMovementList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -movement_list = context.getOrderRelatedMovementList() -movement_uid_list = map(lambda o:o.getUid(), movement_list) -return map(lambda o: o.getObject(), context.ProductionOrder_zGetMaterialSourcingMovementList(order_related_movement_uid_list = movement_uid_list)) diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedImmaterialConsumptionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedImmaterialConsumptionList.zsql deleted file mode 100755 index df55c769350354e8e1c427d9f55d3065fc0a94be..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedImmaterialConsumptionList.zsql +++ /dev/null @@ -1,50 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - resource.uid, - resource.path, - SUM(movement.target_quantity) as target_quantity, - SUM(movement.quantity) as quantity, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -FROM - catalog AS transformation_rule, - catalog AS resource, - category AS resource_category, - catalog, - stock, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.uid = catalog.uid -<dtml-if order_related_movement_uid_list> -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if> -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND resource.portal_type = "Category" -AND resource_category.uid = resource.uid -AND resource_category.category_uid = resource.uid -AND resource_category.base_category_uid = <dtml-var "portal_categories.operation.getUid()"> -GROUP BY - resource.uid, movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialConsumptionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialConsumptionList.zsql deleted file mode 100755 index bd43ef04ec0cfc55f46a5f5914f99a52b8ea5ff1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialConsumptionList.zsql +++ /dev/null @@ -1,54 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list -query -at_date</params> -SELECT - resource.uid, - resource.path, - SUM(movement.target_quantity) as target_quantity, - SUM(movement.quantity) as quantity, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -<dtml-if at_date>,<dtml-sqlvar at_date type="string" > as at_date -</dtml-if> -<dtml-if query>,<dtml-sqlvar query type="string"> as query -</dtml-if> -FROM - catalog AS transformation_rule, - catalog AS resource, - catalog, - stock, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.uid = catalog.uid -<dtml-if order_related_movement_uid_list> -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if> -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu") -GROUP BY - resource.uid, movement.variation_text -ORDER BY - resource.title, movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialProductionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialProductionList.zsql deleted file mode 100755 index dd91a5b6068dbefe2e02177581e3c9329a748acb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialProductionList.zsql +++ /dev/null @@ -1,46 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - resource.uid, - resource.path, - SUM(movement.target_quantity) as target_quantity, - SUM(movement.quantity) as quantity, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -FROM - catalog AS transformation_rule, - catalog AS resource, - catalog, - stock, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.uid = catalog.uid -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Modele") -GROUP BY - resource.uid, movement.variation_text -ORDER BY - resource.title, movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialSourcingList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialSourcingList.zsql deleted file mode 100755 index 14fc92f7fa5ae73c05e8ee3e479b7787c00c3b3d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetAggregatedMaterialSourcingList.zsql +++ /dev/null @@ -1,49 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - resource.uid, - resource.path, - SUM(movement.target_quantity) as target_quantity, - SUM(movement.quantity) as quantity, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -FROM - catalog AS transformation_rule, - catalog AS consumed, - catalog AS transformation_sourcing_rule, - catalog AS resource, - catalog, - stock, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND transformation_sourcing_rule.id = "default_transformation_sourcing_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.uid = catalog.uid -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_sourcing_rule.uid -AND transformation_sourcing_rule.parent_uid = consumed.uid -AND consumed.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu") -GROUP BY - resource.uid, movement.variation_text diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionList.zsql deleted file mode 100755 index c3aefc7517383fef8224ccc46c150c24cd010c7c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionList.zsql +++ /dev/null @@ -1,52 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.uid, - catalog.path, - movement.target_quantity, - movement.quantity, - movement.source_uid, - movement.destination_uid, - movement.start_date, - movement.stop_date, - movement.target_start_date, - movement.target_stop_date, - movement.variation_text, - resource.relative_url, - resource.id, - resource.title, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -FROM - catalog, - stock, - catalog AS transformation_rule, - catalog AS resource, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND stock.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu") diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionMovementList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionMovementList.zsql deleted file mode 100755 index 808bf51153776b632ecd88b3ea0d169f688fbe60..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetConsumptionMovementList.zsql +++ /dev/null @@ -1,24 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.* -FROM - catalog AS transformation_rule, - catalog AS resource, - catalog, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu" OR resource.portal_type = "Category") \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetImmaterialConsumptionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetImmaterialConsumptionList.zsql deleted file mode 100755 index a5472a9b008b644c324d36b8d38d29442ae0cda2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetImmaterialConsumptionList.zsql +++ /dev/null @@ -1,42 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.uid, - catalog.path, - movement.target_quantity, - movement.quantity, - movement.source_uid, - movement.destination_uid, - movement.start_date, - movement.stop_date, - movement.target_start_date, - movement.target_stop_date, - movement.variation_text, - resource.relative_url, - resource.id, - resource.uid AS resource_uid, - resource.Title -FROM - catalog AS transformation_rule, - catalog AS resource, - catalog, - category AS resource_category, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-last><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND resource.portal_type = "Category" -AND resource_category.uid = resource.uid -AND resource_category.category_uid = resource.uid -AND resource_category.base_category_uid = <dtml-var "portal_categories.operation.getUid()"> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialConsumptionList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialConsumptionList.zsql deleted file mode 100755 index c3aefc7517383fef8224ccc46c150c24cd010c7c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialConsumptionList.zsql +++ /dev/null @@ -1,52 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.uid, - catalog.path, - movement.target_quantity, - movement.quantity, - movement.source_uid, - movement.destination_uid, - movement.start_date, - movement.stop_date, - movement.target_start_date, - movement.target_stop_date, - movement.variation_text, - resource.relative_url, - resource.id, - resource.title, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - catalog.simulation_state AS simulation_state -FROM - catalog, - stock, - catalog AS transformation_rule, - catalog AS resource, - catalog AS node, - catalog AS section, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND stock.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu") diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialProductionMovementList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialProductionMovementList.zsql deleted file mode 100755 index be46996be74ff9944c4293ae204288882d049087..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialProductionMovementList.zsql +++ /dev/null @@ -1,24 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.* -FROM - catalog AS transformation_rule, - catalog AS resource, - catalog, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND catalog.parent_uid = transformation_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Modele" OR resource.portal_type = "Composant" OR resource.portal_type = "Tissu" OR resource.portal_type = "Category") \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialSourcingMovementList.zsql b/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialSourcingMovementList.zsql deleted file mode 100755 index 004aed92ab06e3a705864df4b97abd9fd78759f5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ProductionOrder_zGetMaterialSourcingMovementList.zsql +++ /dev/null @@ -1,28 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:DeliveryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>order_related_movement_uid_list:list</params> -SELECT - catalog.* -FROM - catalog AS transformation_rule, - catalog AS consumed, - catalog AS transformation_sourcing_rule, - catalog AS resource, - catalog, - movement -WHERE - transformation_rule.id = "default_transformation_rule" -AND (<dtml-in order_related_movement_uid_list>transformation_rule.parent_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -AND consumed.parent_uid = transformation_rule.uid -AND transformation_sourcing_rule.parent_uid = consumed.uid -AND catalog.parent_uid = transformation_sourcing_rule.uid -AND movement.uid = catalog.uid -AND movement.resource_uid = resource.uid -AND (resource.portal_type = "Composant" OR resource.portal_type = "Tissu") diff --git a/product/Coramy/skins/coramy_mrp/Resource_getChartCurrentInventoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getChartCurrentInventoryList.py deleted file mode 100755 index 405965133173c273f29120521fdf035f5f247fa2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getChartCurrentInventoryList.py +++ /dev/null @@ -1,13 +0,0 @@ -## Script (Python) "Resource_getChartCurrentInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -from DateTime import DateTime -result = map(lambda x:(x[0], x[1]), context.Resource_zGetChartInventoryList(to_date=DateTime(),resource_uid=context.getUid())) -result = filter(lambda x: x[1] > 0, result) -return result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getChartFutureHistoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getChartFutureHistoryList.py deleted file mode 100755 index 779b5678bb7fe9bffd857ea3d3fd80816c0ea007..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getChartFutureHistoryList.py +++ /dev/null @@ -1,57 +0,0 @@ -## Script (Python) "Resource_getChartFutureHistoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=from_date=None, to_date=None, node_uid=None, section_uid=None, **kw -##title= -## -from DateTime import DateTime -# context is the resource which we call this method on -resource = context - -# Initialize some parameters which we do not know yet where to get from -# XXX TO BE DONE TO CONVERT OBJECTS / URLS to UIDS -if from_date is None: from_date =DateTime() -if to_date is None: to_date = from_date + 365 - -# Get the inventory at from_date -if from_date is not None: - initial_inventory_list = resource.Resource_zGetInventoryList(resource_uid = resource.getUid(), - to_date = from_date, node_uid = node_uid, section_uid=section_uid, **kw) - if len(initial_inventory_list) > 0: - initial_inventory_list = initial_quantity_list[0].inventory - else: - initial_inventory = 0.0 -else: - initial_inventory = 0.0 - -# Get the movement history -quantity_history_list = resource.Resource_zGetMovementHistoryList(resource_uid = resource.getUid(), - from_date = from_date, to_date=to_date, node_uid = node_uid, section_uid=section_uid, **kw) - -# Calculate the integral -result = [] -current_date = from_date -has_quantity_item = 0 -for quantity_item in quantity_history_list: - has_quantity_item = 1 - if quantity_item.start_date != current_date and current_date is not None: - result += [(current_date,initial_inventory)] - if quantity_item.start_date != current_date: - current_date = quantity_item.start_date - initial_inventory += quantity_item.quantity -if has_quantity_item: - result += [(current_date,initial_inventory)] - -result += [result[-1]] -new_result=[] -i = 1 -while from_date < to_date: - new_result += [(from_date.Date() , result[i-1][1])] - while from_date > result[i][0] and i < (len(result)-1): - i+=1 - from_date += 1 - -return new_result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getChartInventoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getChartInventoryList.py deleted file mode 100755 index c960a3b6bdfa8af89fa5c97664f51c972e080cb7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getChartInventoryList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "Resource_getChartInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -result = map(lambda x:(x[0], x[1]), context.Resource_zGetChartInventoryList(resource_uid=context.getUid())) -result = filter(lambda x: x[1] > 0, result) -return result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getCurrentInventoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getCurrentInventoryList.py deleted file mode 100755 index cc7abe95a047ebab30d5420230fbaa5b465bb2df..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getCurrentInventoryList.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "Resource_getCurrentInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -from DateTime import DateTime -return context.Resource_zGetInventoryList(resource_uid = context.getUid(), to_date = DateTime(), **kw) diff --git a/product/Coramy/skins/coramy_mrp/Resource_getFutureGlobalInventory.py b/product/Coramy/skins/coramy_mrp/Resource_getFutureGlobalInventory.py deleted file mode 100755 index da7430fc87a05aead4066d5de588a09577beeb21..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getFutureGlobalInventory.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "Resource_getFutureGlobalInventory" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=section_uid=None, **kw -##title= -## -from DateTime import DateTime -return context.Resource_zGetGlobalInventoryList(resource_uid = context.getUid(), metanode="group/coramy", **kw)[0].inventory diff --git a/product/Coramy/skins/coramy_mrp/Resource_getFutureHistoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getFutureHistoryList.py deleted file mode 100755 index 1716ec53d1ebd64892189bcdd2bf8bb611340701..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getFutureHistoryList.py +++ /dev/null @@ -1,45 +0,0 @@ -## Script (Python) "Resource_getFutureHistoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=from_date=None, to_date=None, node_uid=None, section_uid=None, **kw -##title= -## -# context is the resource which we call this method on -resource = context - -# Initialize some parameters which we do not know yet where to get from -# XXX TO BE DONE TO CONVERT OBJECTS / URLS to UIDS - -# Get the inventory at from_date -if from_date is not None: - initial_inventory_list = resource.Resource_zGetInventoryList(resource_uid = resource.getUid(), - to_date = from_date, node_uid = node_uid, section_uid=section_uid, **kw) - if len(initial_inventory_list) > 0: - initial_inventory_list = initial_quantity_list[0].inventory - else: - initial_inventory = 0.0 -else: - initial_inventory = 0.0 - -# Get the movement history -quantity_history_list = resource.Resource_zGetMovementHistoryList(resource_uid = resource.getUid(), - from_date = from_date, to_date=to_date, node_uid = node_uid, section_uid=section_uid, **kw) - -# Calculate the integral -result = [] -current_date = from_date -has_quantity_item = 0 -for quantity_item in quantity_history_list: - has_quantity_item = 1 - if quantity_item.start_date != current_date and current_date is not None: - result = [{'start_date': current_date, 'inventory': initial_inventory}] - if quantity_item.start_date != current_date: - current_date = quantity_item.start_date - initial_inventory += quantity_item.quantity -if has_quantity_item: - result += [ {'start_date': current_date, 'inventory': initial_inventory} ] - -return result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getFutureInventoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getFutureInventoryList.py deleted file mode 100755 index d393dea85a15f13200f6ab6249064d691b021ca6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getFutureInventoryList.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "Resource_getFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -from DateTime import DateTime -return context.Resource_zGetInventoryList(resource_uid = context.getUid(), **kw) diff --git a/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryChart.py b/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryChart.py deleted file mode 100755 index 3a35fdf7609bd9688ccee731f33aa89ea019247f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryChart.py +++ /dev/null @@ -1,65 +0,0 @@ -## Script (Python) "Resource_getInventoryHistoryChart" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=resource_uid=None, variation_text=None, from_date=None, to_date=None, **kw -##title= -## -# Adapt dates -if from_date is None: from_date =DateTime() -if to_date is None: to_date = from_date + 365 - -# Get the movement history -inventory_history_list = context.Resource_getInventoryHistoryList(resource_uid=resource_uid, - variation_text=variation_text, from_date=from_date, to_date=to_date, **kw) - -# Create table of dates -table = {} -date = DateTime(from_date.Date()) -while date < to_date: - table[date.Date()] = {} # one value per (resource, variation) - date = date + 1 - -# Fill existing variables and define resource_list -resource_dict = {} -for inventory in inventory_history_list: - key = (inventory['resource_relative_url'], inventory['variation_text']) - table[inventory['stop_date'].Date()][key] = \ - inventory['inventory'] - resource_dict[key] = 1 - -resource_list = resource_dict.keys() -resource_list.sort() - -# Fill holes -date = DateTime((from_date + 1).Date()) -while date < to_date: - current_date_key = date.Date() - previous_date_key = (date - 1).Date() - for resource_key in resource_list: - if not table[previous_date_key].has_key(resource_key): - # This should not happen - table[previous_date_key][resource_key] = None - if not table[current_date_key].has_key(resource_key): - table[current_date_key][resource_key] = table[previous_date_key][resource_key] - date = date + 1 - -# Build List -date = DateTime(from_date.Date()) -result = [] -while date < to_date: - current_date_key = date.Date() - item = [current_date_key] - for resource_key in resource_list: - try: - item += [table[current_date_key][resource_key]] - except: - print str(resource_key) - print current_date_key - return printed - result += [item] - date = date + 1 - -return result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryList.py deleted file mode 100755 index f232c5c04ec4f3c808d95584474706015d1ee0a7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getInventoryHistoryList.py +++ /dev/null @@ -1,51 +0,0 @@ -## Script (Python) "Resource_getInventoryHistoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=resource_uid=None, variation_text=None, from_date=None, to_date=None, **kw -##title= -## -# Get the movement history -# BEWARE: if called in context of portal_categories, will include id 'resource' in context -quantity_history_list = context.Resource_zGetMovementHistoryList(resource_uid=resource_uid, - variation_text=variation_text, from_date=from_date, to_date=to_date, **kw) - -# Calculate the integral as a list of tuples (date, resource, variation, inventory) -# Init integral -result = [] -initial_inventory = {} # one value for each resource variation -current_date = {} # one value for each resource variation -last_movement = {} -initial_date = None -if from_date is not None: initial_date = from_date -for quantity_item in quantity_history_list: - if initial_date is None: initial_date = quantity_item.stop_date - key = (quantity_item.resource_uid, quantity_item.variation_text) - # Do we have a quantity ? - if not initial_inventory.has_key(key): - # Calculate inventory at initial_date - inventory = context.Resource_zGetInventory(resource_uid=[quantity_item.resource_uid], - to_date=initial_date,variation_text=quantity_item.variation_text, **kw) - if len(initial_inventory) > 0: - inventory = inventory[0].inventory - if inventory is None: inventory = 0.0 # There are no movements at this time - else: - inventory = 0.0 - initial_inventory[key] = inventory - current_date[key] = initial_date - if quantity_item.stop_date != current_date[key]: - result += [{'stop_date': current_date[key], 'resource_relative_url': quantity_item.resource_relative_url, - 'variation_text':quantity_item.variation_text, 'inventory': initial_inventory[key]}] - current_date[key] = quantity_item.stop_date - if quantity_item.quantity is not None: - initial_inventory[key] = initial_inventory[key] + quantity_item.quantity - last_movement[key] = quantity_item - -for key in initial_inventory.keys(): - quantity_item = last_movement[key] - result += [{'stop_date': current_date[key], 'resource_relative_url': quantity_item.resource_relative_url, - 'variation_text':quantity_item.variation_text, 'inventory': initial_inventory[key]}] - -return result diff --git a/product/Coramy/skins/coramy_mrp/Resource_getInventoryList.py b/product/Coramy/skins/coramy_mrp/Resource_getInventoryList.py deleted file mode 100755 index 516a811d2c66c42112d313712e49880a8e2efae6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_getInventoryList.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "Resource_getInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -return context.Resource_zGetInventoryList(resource_uid = context.getUid(), **kw) diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetChartInventoryList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetChartInventoryList.zsql deleted file mode 100755 index a0619aa68c82b43b4f556b6f02e8b9adb7577d59..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetChartInventoryList.zsql +++ /dev/null @@ -1,35 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>resource_uid -before_date -node_uid -section_uid -variation_text</params> -SELECT - section.title AS section_title, - SUM(stock.quantity) as inventory -FROM - catalog, movement, stock, catalog as node, catalog as section, catalog as resource -WHERE - catalog.uid = movement.uid -AND catalog.uid = stock.uid -<dtml-if resource_uid>AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -</dtml-if>AND movement.is_accountable = 1 -AND node.uid = stock.node_uid -AND section.uid = stock.node_uid -AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -<dtml-if before_date>AND movement.start_date < <dtml-sqlvar before_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if>GROUP BY - stock.section_uid, resource_uid -ORDER BY - inventory DESC \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetInventory.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetInventory.zsql deleted file mode 100755 index a9b9a1d307a6cde169b07d7eb4c9a9c292f6efdf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetInventory.zsql +++ /dev/null @@ -1,75 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:InventoryBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>resource_uid:list -resource:list -from_date -to_date -node -section -node_uid -section_uid -variation_text=None -node_category -section_category -resource_category -omit_simulation -omit_input -omit_output -simulation_state -query</params> -SELECT - SUM(stock.quantity) AS inventory, - SUM(stock.quantity) AS quantity, - COUNT(DISTINCT node.title) AS node_title, - COUNT(DISTINCT node.relative_url) AS node_relative_url, - COUNT(DISTINCT section.title) AS section_title, - COUNT(DISTINCT section.relative_url) AS section_relative_url, - COUNT(DISTINCT resource.title) AS resource_title, - COUNT(DISTINCT resource.relative_url) AS resource_relative_url, - COUNT(DISTINCT movement.variation_text) AS variation_text, - MAX(stock.resource_uid) AS resource_uid -FROM - movement - LEFT JOIN catalog ON (movement.uid = catalog.uid) - LEFT JOIN stock ON (movement.uid = stock.uid) - , catalog AS node, catalog AS section, catalog AS resource <dtml-if node_category>, catalog AS node_c, catalog AS node_bc, category AS node_membership </dtml-if> <dtml-if section_category>, catalog AS section_c, catalog AS section_bc, category AS section_membership</dtml-if> <dtml-if resource_category>, catalog AS resource_c, catalog AS resource_bc, category AS resource_membership </dtml-if> <dtml-if query>, category </dtml-if> -WHERE - 1 = 1 -<dtml-if resource>AND (<dtml-in resource> resource.relative_url = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if "variation_text is not None">AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if>AND movement.is_accountable = 1 -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND stock.resource_uid = resource.uid -<dtml-if from_date>AND movement.stop_date >= <dtml-sqlvar from_date type="string"> -</dtml-if><dtml-if to_date>AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if node>AND node.relative_url = <dtml-sqlvar node type="string"> -</dtml-if><dtml-if section>AND section.relative_url = <dtml-sqlvar section type="string"> -</dtml-if><dtml-if node_category>AND node_c.relative_url = <dtml-sqlvar node_category type="string"> -AND node_membership.category_uid = node_c.uid -AND node_membership.base_category_uid = node_bc.uid -AND node_membership.uid = node.uid -</dtml-if><dtml-if section_category>AND section_c.relative_url = <dtml-sqlvar section_category type="string"> -AND section_membership.category_uid = section_c.uid -AND section_membership.base_category_uid = section_bc.uid -AND section_membership.uid = section.uid -</dtml-if><dtml-if resource_category>AND resource_c.relative_url = <dtml-sqlvar resource_category type="string"> -AND resource_membership.category_uid = resource_c.uid -AND resource_membership.base_category_uid = resource_bc.uid -AND resource_membership.uid = resource.uid -</dtml-if><dtml-if omit_simulation>AND catalog.portal_type != "Simulation Movement" -</dtml-if><dtml-if omit_input>AND stock.quantity < 0 AND movement.source_uid <> movement.destination_uid -</dtml-if><dtml-if omit_output>AND stock.quantity > 0 AND movement.source_uid <> movement.destination_uid -</dtml-if><dtml-if simulation_state>AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if query>AND category.uid = node.uid -AND <dtml-var query></dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryList.zsql deleted file mode 100755 index 43b224e4d788eb6a63f6b7119c4a07d77711596d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryList.zsql +++ /dev/null @@ -1,90 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:20000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>resource_uid:list -resource:list -from_date -to_date -node_uid -section_uid -node -section -variation_text="XXX_marker" -node_category -section_category -resource_category -omit_simulation -omit_input -omit_output -simulation_state -query -calculate_asset:int=0 -group_by_node=1 -group_by_section=1 -group_by_variation=1</params> -SELECT - SUM(stock.quantity) AS inventory, - <dtml-if "calculate_asset != 0"> SUM(stock.total_asset_price) AS asset_price, </dtml-if> - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.relative_url AS resource_relative_url, - resource.uid AS resource_uid, - movement.variation_text AS variation_text, - MAX(catalog.path) AS path, - <dtml-sqlvar group_by_node type="int"> AS group_by_node, - <dtml-sqlvar group_by_section type="int"> AS group_by_section, - <dtml-sqlvar group_by_variation type="int"> AS group_by_variation - <dtml-if section_category>, <dtml-sqlvar section_category type="string"> AS section_category </dtml-if> - <dtml-if node_category>, <dtml-sqlvar node_category type="string"> AS node_category </dtml-if> -FROM - movement -LEFT JOIN catalog AS resource ON (movement.resource_uid = resource.uid) -LEFT JOIN catalog ON (catalog.uid = movement.uid) -LEFT JOIN stock ON (stock.uid = movement.uid) -LEFT JOIN catalog AS node ON (stock.node_uid = node.uid) -LEFT JOIN catalog AS section ON (stock.section_uid = section.uid) - <dtml-if node_category>, catalog AS node_c, catalog AS node_bc, category AS node_membership </dtml-if> <dtml-if section_category>, catalog AS section_c, catalog AS section_bc, category AS section_membership</dtml-if> <dtml-if resource_category>, catalog AS resource_c, catalog AS resource_bc, category AS resource_membership </dtml-if> <dtml-if query>, category </dtml-if> -WHERE - 1 = 1 -<dtml-if resource>AND (<dtml-in resource> resource.relative_url = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if>AND movement.is_accountable = 1 -<dtml-if from_date>AND movement.stop_date >= <dtml-sqlvar from_date type="string"> -</dtml-if><dtml-if to_date>AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if "variation_text <> 'XXX_marker'">AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if><dtml-if node>AND node.relative_url = <dtml-sqlvar node type="string"> -</dtml-if><dtml-if section>AND section.relative_url = <dtml-sqlvar section type="string"> -</dtml-if><dtml-if node_category>AND node_c.relative_url = <dtml-sqlvar node_category type="string"> -AND node_membership.category_uid = node_c.uid -AND node_membership.base_category_uid = node_bc.uid -AND node_membership.uid = node.uid -</dtml-if><dtml-if section_category>AND section_c.relative_url = <dtml-sqlvar section_category type="string"> -AND section_membership.category_uid = section_c.uid -AND section_membership.base_category_uid = section_bc.uid -AND section_membership.uid = section.uid -</dtml-if><dtml-if resource_category>AND resource_c.relative_url = <dtml-sqlvar resource_category type="string"> -AND resource_membership.category_uid = resource_c.uid -AND resource_membership.base_category_uid = resource_bc.uid -AND resource_membership.uid = resource.uid -</dtml-if><dtml-if omit_simulation>AND catalog.portal_type != "Simulation Movement" -</dtml-if><dtml-if omit_input>AND stock.quantity < 0 -</dtml-if><dtml-if omit_output>AND stock.quantity > 0 -</dtml-if><dtml-if simulation_state>AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if query>AND category.uid = node.uid -AND <dtml-var query></dtml-if> -GROUP BY - <dtml-if group_by_node>stock.node_uid, </dtml-if><dtml-if group_by_section>stock.section_uid, </dtml-if>movement.resource_uid<dtml-if group_by_variation>, movement.variation_text</dtml-if> - -ORDER BY - node.title, resource.title, movement.variation_text diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryMovementList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryMovementList.zsql deleted file mode 100755 index f86299acffb62c000011c5e370940fb693ea48ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetInventoryMovementList.zsql +++ /dev/null @@ -1,32 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>resource_relative_url -variation_relative_url</params> -SELECT inventory_cell.relative_url, inventory_cell.path, movement.start_date, movement.stop_date -FROM movement, catalog as inventory_cell, catalog as resource, catalog as variation, category as cat1, category as cat2, catalog as delivery, catalog as inventory_line - -WHERE inventory_cell.portal_type = "Inventory Cell" -AND inventory_cell.uid = movement.uid -AND movement.resource_uid = resource.uid -AND resource.relative_url = "<dtml-var resource_relative_url>" -AND variation.relative_url = "<dtml-var variation_relative_url>" -AND delivery.portal_type = "Inventory MP" -AND delivery.uid = movement.delivery_uid -AND inventory_cell.parent_uid = inventory_line.uid - -AND cat2.uid = inventory_cell.uid -AND cat2.base_category_uid = <dtml-var "portal_categories.coloris.uid"> -AND cat2.category_uid = variation.uid - -AND cat1.uid = inventory_line.uid -AND cat1.base_category_uid = <dtml-var "portal_categories.resource.uid"> -AND cat1.category_uid = resource.uid - -ORDER BY movement.stop_date DESC, movement.start_date DESC \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetMovementHistoryList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetMovementHistoryList.zsql deleted file mode 100755 index d427aa213604616061f4379b8a695e6bc04d04e1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetMovementHistoryList.zsql +++ /dev/null @@ -1,90 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>resource_uid:list -resource:list -from_date -to_date -node_uid -section_uid -node -section -variation_text=None -node_category -section_category -resource_category -simulation_state -query -omit_input -omit_output -omit_simulation</params> -SELECT - catalog.path as path, - catalog.uid as uid, - catalog.relative_url as relative_url, - movement.start_date AS start_date, - movement.stop_date AS stop_date, - movement.source_uid AS source_uid, - movement.destination_uid AS destination_uid, - movement.price AS price, - movement.total_price AS total_price, - SUM(stock.quantity) AS quantity, - node.uid AS node_uid, - node.title AS node_title, - node.relative_url AS node_relative_url, - section.uid AS section_uid, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.uid AS resource_uid, - resource.relative_url AS resource_relative_url, - movement.variation_text AS variation_text, - movement.delivery_uid AS explanation_uid, - catalog.simulation_state AS simulation_state -FROM - movement - LEFT JOIN catalog ON (movement.uid = catalog.uid) - LEFT JOIN stock ON (movement.uid = stock.uid), - catalog AS node, catalog AS section, catalog AS resource <dtml-if node_category>, catalog AS node_c, catalog AS node_bc, category AS node_membership </dtml-if> <dtml-if section_category>, catalog AS section_c, catalog AS section_bc, category AS section_membership</dtml-if> <dtml-if resource_category>, catalog AS resource_c, catalog AS resource_bc, category AS resource_membership </dtml-if> <dtml-if query>, category </dtml-if> -WHERE - catalog.uid = movement.uid -AND catalog.uid = stock.uid -AND node.uid = stock.node_uid -AND section.uid = stock.section_uid -AND movement.resource_uid = resource.uid -<dtml-if resource>AND (<dtml-in resource> resource.relative_url = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if>AND movement.is_accountable = 1 -<dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if from_date>AND movement.stop_date >= <dtml-sqlvar from_date type="string"> -</dtml-if><dtml-if to_date>AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if "variation_text is not None">AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if><dtml-if omit_simulation>AND catalog.portal_type != "Simulation Movement" -</dtml-if><dtml-if omit_input>AND stock.quantity < 0 AND movement.source_uid <> movement.destination_uid -</dtml-if><dtml-if omit_output>AND stock.quantity > 0 AND movement.source_uid <> movement.destination_uid -</dtml-if><dtml-if node_category>AND node_c.relative_url = <dtml-sqlvar node_category type="string"> -AND node_membership.category_uid = node_c.uid -AND node_membership.base_category_uid = node_bc.uid -AND node_membership.uid = node.uid -</dtml-if><dtml-if section_category>AND section_c.relative_url = <dtml-sqlvar section_category type="string"> -AND section_membership.category_uid = section_c.uid -AND section_membership.base_category_uid = section_bc.uid -AND section_membership.uid = section.uid -</dtml-if><dtml-if resource_category>AND resource_c.relative_url = <dtml-sqlvar resource_category type="string"> -AND resource_membership.category_uid = resource_c.uid -AND resource_membership.base_category_uid = resource_bc.uid -AND resource_membership.uid = resource.uid -</dtml-if><dtml-if simulation_state>AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if query>AND category.uid = node.uid -AND <dtml-var query></dtml-if> -GROUP BY - movement.delivery_uid, resource.uid, movement.variation_text, node.uid, section.uid, catalog.simulation_state -ORDER BY - movement.start_date, node.title, resource.title, movement.quantity \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetStockMPInventoryList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetStockMPInventoryList.zsql deleted file mode 100755 index 55fa4e260b36f9f297819b1ebf532d1e30cc9268..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetStockMPInventoryList.zsql +++ /dev/null @@ -1,94 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:20000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>resource_uid:list -resource:list -from_date -to_date -node_uid -section_uid -node -section -variation_text="XXX_marker" -node_category -section_category -resource_category -omit_simulation -omit_input -omit_output -simulation_state -query -calculate_asset:int=0 -group_by_node:int=1 -group_by_section:int=1 -group_by_variation:int=1</params> -SELECT - SUM(stock.quantity) AS inventory, - <dtml-if "calculate_asset != 0"> SUM(stock.total_asset_price) AS asset_price, </dtml-if> - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.relative_url AS resource_relative_url, - resource.uid AS resource_uid, - movement.variation_text AS variation_text, - type_compo.title AS type_title, - resource.default_source_title AS source_title, - MAX(catalog.path) AS path -FROM - movement -LEFT JOIN catalog AS resource ON (movement.resource_uid = resource.uid) -LEFT JOIN category as cat_type_compo ON (cat_type_compo.uid = resource.uid -AND cat_type_compo.category_strict_membership = 1 -AND ( cat_type_compo.base_category_uid = <dtml-var "portal_categories.type_composant.uid"> -OR cat_type_compo.base_category_uid = <dtml-var "portal_categories.motif.uid"> ) ) -LEFT JOIN catalog AS type_compo ON (type_compo.uid = cat_type_compo.category_uid) -LEFT JOIN catalog ON (catalog.uid = movement.uid) -LEFT JOIN stock ON (stock.uid = movement.uid) -LEFT JOIN catalog AS node ON (stock.node_uid = node.uid) -LEFT JOIN catalog AS section ON (stock.section_uid = section.uid) - <dtml-if node_category>, catalog AS node_c, catalog AS node_bc, category AS node_membership </dtml-if> <dtml-if section_category>, catalog AS section_c, catalog AS section_bc, category AS section_membership</dtml-if> <dtml-if resource_category>, catalog AS resource_c, catalog AS resource_bc, category AS resource_membership </dtml-if> <dtml-if query>, category </dtml-if> -WHERE - 1 = 1 -<dtml-if resource>AND (<dtml-in resource> resource.relative_url = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if>AND movement.is_accountable = 1 -<dtml-if from_date>AND movement.stop_date >= <dtml-sqlvar from_date type="string"> -</dtml-if><dtml-if to_date>AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if "variation_text <> 'XXX_marker'">AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if><dtml-if node>AND node.relative_url = <dtml-sqlvar node type="string"> -</dtml-if><dtml-if section>AND section.relative_url = <dtml-sqlvar section type="string"> -</dtml-if><dtml-if node_category>AND node_c.relative_url = <dtml-sqlvar node_category type="string"> -AND node_membership.category_uid = node_c.uid -AND node_membership.base_category_uid = node_bc.uid -AND node_membership.uid = node.uid -</dtml-if><dtml-if section_category>AND section_c.relative_url = <dtml-sqlvar section_category type="string"> -AND section_membership.category_uid = section_c.uid -AND section_membership.base_category_uid = section_bc.uid -AND section_membership.uid = section.uid -</dtml-if><dtml-if resource_category>AND resource_c.relative_url = <dtml-sqlvar resource_category type="string"> -AND resource_membership.category_uid = resource_c.uid -AND resource_membership.base_category_uid = resource_bc.uid -AND resource_membership.uid = resource.uid -</dtml-if><dtml-if omit_simulation>AND catalog.portal_type != "Simulation Movement" -</dtml-if><dtml-if omit_input>AND stock.quantity < 0 -</dtml-if><dtml-if omit_output>AND stock.quantity > 0 -</dtml-if><dtml-if simulation_state>AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if query>AND category.uid = node.uid -AND <dtml-var query></dtml-if> -AND catalog.uid is not NULL -AND resource.uid is not NULL -GROUP BY - <dtml-if group_by_node>stock.node_uid, </dtml-if><dtml-if group_by_section>stock.section_uid, </dtml-if>movement.resource_uid<dtml-if group_by_variation>, movement.variation_text</dtml-if> - -ORDER BY - node.title, resource.title, movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/Resource_zGetStockPFInventoryList.zsql b/product/Coramy/skins/coramy_mrp/Resource_zGetStockPFInventoryList.zsql deleted file mode 100755 index d9eac646653823b3172f866312a1debb3598cb9c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/Resource_zGetStockPFInventoryList.zsql +++ /dev/null @@ -1,102 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:20000 -max_cache:100 -cache_time:0 -class_name:InventoryListBrain -class_file:InventoryBrain.py -</dtml-comment> -<params>resource_uid:list -resource:list -from_date -to_date -node_uid -section_uid -node -section -variation_text="XXX_marker" -node_category -section_category -resource_category -omit_simulation -omit_input -omit_output -simulation_state -query -calculate_asset:int=0 -group_by_node:int=1 -group_by_section:int=1 -group_by_variation:int=1 -collection_url</params> -SELECT - SUM(stock.quantity) AS inventory, - <dtml-if "calculate_asset != 0"> SUM(stock.total_asset_price) AS asset_price, </dtml-if> - node.title AS node_title, - node.relative_url AS node_relative_url, - section.title AS section_title, - section.relative_url AS section_relative_url, - resource.title AS resource_title, - resource.relative_url AS resource_relative_url, - resource.uid AS resource_uid, - movement.variation_text AS variation_text, - famille.title AS famille_title, - resource.default_destination_title as destination_title, - MAX(catalog.path) AS path -FROM - movement -LEFT JOIN catalog AS resource ON (movement.resource_uid = resource.uid) -<dtml-if collection_url> -LEFT JOIN catalog AS my_collection ON (my_collection.relative_url = "<dtml-var collection_url>") -LEFT JOIN category as cat_collection ON (cat_collection.uid = resource.uid -AND cat_collection.category_uid = my_collection.uid -AND cat_collection.base_category_uid = <dtml-var "portal_categories.collection.uid"> ) -</dtml-if> -LEFT JOIN category as cat_famille ON ( cat_famille.uid = resource.uid -AND cat_famille.category_strict_membership = 1 -AND cat_famille.base_category_uid = <dtml-var "portal_categories.eip.uid"> ) -LEFT JOIN catalog AS famille ON (famille.uid = cat_famille.category_uid) -LEFT JOIN catalog ON (catalog.uid = movement.uid) -LEFT JOIN stock ON (stock.uid = movement.uid) -LEFT JOIN catalog AS node ON (stock.node_uid = node.uid) -LEFT JOIN catalog AS section ON (stock.section_uid = section.uid) - <dtml-if node_category>, catalog AS node_c, catalog AS node_bc, category AS node_membership </dtml-if> <dtml-if section_category>, catalog AS section_c, catalog AS section_bc, category AS section_membership</dtml-if> <dtml-if resource_category>, catalog AS resource_c, catalog AS resource_bc, category AS resource_membership </dtml-if> <dtml-if query>, category </dtml-if> -WHERE - 1 = 1 -<dtml-if resource>AND (<dtml-in resource> resource.relative_url = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if>AND movement.is_accountable = 1 -<dtml-if from_date>AND movement.stop_date >= <dtml-sqlvar from_date type="string"> -</dtml-if><dtml-if to_date>AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if "variation_text <> 'XXX_marker'">AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if><dtml-if node>AND node.relative_url = <dtml-sqlvar node type="string"> -</dtml-if><dtml-if section>AND section.relative_url = <dtml-sqlvar section type="string"> -</dtml-if><dtml-if node_category>AND node_c.relative_url = <dtml-sqlvar node_category type="string"> -AND node_membership.category_uid = node_c.uid -AND node_membership.base_category_uid = node_bc.uid -AND node_membership.uid = node.uid -</dtml-if><dtml-if section_category>AND section_c.relative_url = <dtml-sqlvar section_category type="string"> -AND section_membership.category_uid = section_c.uid -AND section_membership.base_category_uid = section_bc.uid -AND section_membership.uid = section.uid -</dtml-if><dtml-if resource_category>AND resource_c.relative_url = <dtml-sqlvar resource_category type="string"> -AND resource_membership.category_uid = resource_c.uid -AND resource_membership.base_category_uid = resource_bc.uid -AND resource_membership.uid = resource.uid -</dtml-if><dtml-if omit_simulation>AND catalog.portal_type != "Simulation Movement" -</dtml-if><dtml-if omit_input>AND stock.quantity < 0 -</dtml-if><dtml-if omit_output>AND stock.quantity > 0 -</dtml-if><dtml-if simulation_state>AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if query>AND category.uid = node.uid -AND <dtml-var query></dtml-if> -<dtml-if collection_url> -AND cat_collection.uid is not NULL -</dtml-if> -AND catalog.uid is not NULL -GROUP BY - <dtml-if group_by_node>stock.node_uid, </dtml-if><dtml-if group_by_section>stock.section_uid, </dtml-if>movement.resource_uid<dtml-if group_by_variation>, movement.variation_text</dtml-if> - -ORDER BY - node.title, resource.title, movement.variation_text \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_activateRequirementList.py b/product/Coramy/skins/coramy_mrp/SimulationTool_activateRequirementList.py deleted file mode 100755 index 65ff4986229bc930caf7c1ce0e295098eb9469de..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_activateRequirementList.py +++ /dev/null @@ -1,59 +0,0 @@ -## Script (Python) "SimulationTool_activateRequirementList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -if 1: - # Erase existing auto_planned - order_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.ordre_fabrication.getUid()]) - order_id_list = map(lambda x:x.id,order_list) - object_id_list = context.ordre_fabrication.objectIds() - order_id_list = filter(lambda x: x in object_id_list, order_id_list) - context.ordre_fabrication.deleteContent(order_id_list) - - order_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.commande_achat.getUid()]) - order_id_list = map(lambda x:x.id,order_list) - object_id_list = context.commande_achat.objectIds() - order_id_list = filter(lambda x: x in object_id_list, order_id_list) - context.commande_achat.deleteContent(order_id_list) - -#return "Done" - -def activateNodeSection(node_category, section_category): - # Stock sourcing states - source_state_list = ('auto_planned', 'planned', 'ordered', 'confirmed', 'getting_ready', 'ready', 'started', 'stopped', 'delivered', 'invoiced') - #source_state_list = None - result = '' - # Get inventory list - #inventory_list = context.SimulationTool_getGroupFutureInventoryList(simulation_state=source_state_list) - inventory_list = context.Resource_zGetInventoryList(simulation_state=source_state_list, - node_category="site/Stock_MP", - section_category="group/Coramy", - group_by_variation=1) - # Commit SQL - # context.portal_simulation.commitTransaction() - - # Call PortalSimulation_buildRequirementOrder for each missing resource - for inventory_item in inventory_list: - if inventory_item.inventory < 0 and inventory_item.inventory is not None: - # We should use a queue here rather than a dict - OVERKILL - movement = inventory_item.getObject() - if movement is not None: - resource = movement.getResourceValue() - if resource is not None: - if resource.getPortalType() != "Assortiment": - # Only source negative stock - result = result + "Activate Build Order for %s for missing quantity %s" % (inventory_item.resource_relative_url, inventory_item.inventory) - resource.activate(priority=5).SimulationTool_buildRequirementOrder(resource=inventory_item.resource_relative_url, - node_category=node_category, section_category=section_category ) - return result - - -print activateNodeSection("site/Stock_MP", "group/Coramy") -print activateNodeSection("site/Stock_PF", "group/Coramy") - -return printed diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_buildRequirementOrder.py b/product/Coramy/skins/coramy_mrp/SimulationTool_buildRequirementOrder.py deleted file mode 100755 index 64c583df0b2211782e772c16e3991a19d8dab964..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_buildRequirementOrder.py +++ /dev/null @@ -1,122 +0,0 @@ -## Script (Python) "SimulationTool_buildRequirementOrder" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=resource=None,node_category=None,section_category=None -##title= -## -from Products.ERP5.Document import newTempMovement -from DateTime import DateTime - -# Stock sourcing states -source_state_list = ('auto_planned', 'planned', 'ordered', 'confirmed', 'getting_ready', 'ready', 'delivered', 'started', 'stopped', 'invoiced') -#source_state_list = None - -# Default date -now_date = DateTime(DateTime().Date()) - -# Get inventory list -#inventory_list = context.SimulationTool_getGroupFutureInventoryList(resource=resource, simulation_state=source_state_list) -inventory_list = context.Resource_zGetInventoryList(resource=[resource], - simulation_state=source_state_list, - node_category=node_category, - section_category=section_category, - group_by_variation=1) -# Commit SQL -context.portal_simulation.commitTransaction() - -# First, find out which resources are missing -# and build a dictionnary of quantity, variation -quantity_dict = {} -variation_dict = {} -for inventory_item in inventory_list: - if inventory_item.inventory < 0 and inventory_item.inventory is not None: - # Only source negative stock - movement = inventory_item.getObject() - if movement is not None: - key = (inventory_item.resource_relative_url, tuple(movement.getVariationCategoryList())) - quantity_dict[key] = - inventory_item.inventory - variation_dict[key] = movement.getVariationCategoryList() - else: - pass - #LOG('ZeroStockRule WARNING',0,'None movement found') - -# Commit SQL -context.portal_simulation.commitTransaction() - -# A list of resources to create -to_create = quantity_dict.keys() -variated_movement_list = [] -movement_list = [] - -new_id = 0 -# Create movements which are needed -for relative_url, variation_category_list in to_create: - # CHECK IF EXISTING ID - key = (relative_url, variation_category_list) - new_id += 1 - movement = newTempMovement( context.portal_simulation , str(new_id) ) - movement.edit( resource=relative_url ) - movement.setVariationCategoryList( variation_category_list ) - resource = movement.getResourceValue() - - if resource is not None: - # Only order existing resources - stop_date = resource.getNextNegativeInventoryDate(variation_text = movement.getVariationText()) - if stop_date is None: # This happens if we have a negative stock already - stop_date = now_date - - if resource.getPortalType() in ('Modele',): - source = 'site/Piquage' - source_section = 'group/Coramy' - destination_section = 'group/Coramy' - destination = 'site/Stock_PF/Gravelines' - else: - source = source_section = resource.getSource() - destination_section = 'group/Coramy' - destination = 'site/Stock_MP/Gravelines' - movement.edit(target_quantity = quantity_dict[key], - target_start_date = stop_date, - target_stop_date = stop_date, - source = source, - source_section = source_section, - destination_section = destination_section, - destination = destination, - quantity_unit = resource.getDefaultQuantityUnit()) - print "Order %s %s quantity: %s" % (movement.getResource(), movement.getVariationText(), movement.getNetConvertedTargetQuantity()) - if movement.getVariationText() == "": - movement_list.append(movement) - else: - variated_movement_list.append(movement) - -# Build Order for non variated items -root_group = context.portal_simulation.collectMovement(movement_list) -order_list = context.portal_simulation.buildOrderList(root_group) -# Build Order for variated items -root_group = context.portal_simulation.collectMovement(variated_movement_list) -variated_order_list = context.portal_simulation.buildOrderList(root_group) - -# Update orders -for order in order_list + variated_order_list: - print "Confirm Order %s" % order.getRelativeUrl() - order.autoPlan() - order.purchase_order_apply_condition() - # Set local_roles - # what's the gestionaire of this order - user_name = '' - # are we on a sales order or puchase order ? - if order.getPortalType() == 'Sales Order' : - user_name = order.getSourceAdministrationTitle().replace(' ','_') - elif order.getPortalType() == 'Purchase Order' : - # This is an error probably XXX - user_name = order.getDestinationAdministrationPersonTitle() - if user_name is not None: - user_name = user_name.replace(' ','_') - if user_name in (None,'',' ','_') : - user_name = "AnimatriceAppros" - # update local_roles - order.assign_gestionaire_designe_roles(user_name = user_name) - -return printed diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_getCoramyFutureInventoryList.py b/product/Coramy/skins/coramy_mrp/SimulationTool_getCoramyFutureInventoryList.py deleted file mode 100755 index 3366cb381b7941d91915b679287003190d34f275..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_getCoramyFutureInventoryList.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "SimulationTool_getCoramyFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -return context.SimulationTool_zGetCoramyFutureInventoryList(**kw) diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_getGroupFutureInventoryList.py b/product/Coramy/skins/coramy_mrp/SimulationTool_getGroupFutureInventoryList.py deleted file mode 100755 index 8d4362593c39a9e7f95cddb2ab58ab607f14551e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_getGroupFutureInventoryList.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "SimulationTool_getGroupFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -return context.SimulationTool_getCoramyFutureInventoryList(**kw) diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_updateInventory.py b/product/Coramy/skins/coramy_mrp/SimulationTool_updateInventory.py deleted file mode 100755 index 08b4864906652f4dd81869cf9edf9ff99cd6e238..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_updateInventory.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "SimulationTool_updateInventory" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -for b in context.SimulationTool_zGetSortedInventoryList(): - print "#### Indexing Inventory %s ####" % b.relative_url - o = b.getObject() - if o is not None: o.activate(priority=4).recursiveImmediateReindexObject() - -return printed diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_zGetCoramyFutureInventoryList.zsql b/product/Coramy/skins/coramy_mrp/SimulationTool_zGetCoramyFutureInventoryList.zsql deleted file mode 100755 index 4d8687dd1d472c1d656894271369a24bf7a37ca4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_zGetCoramyFutureInventoryList.zsql +++ /dev/null @@ -1,41 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>to_date -resource -simulation_state:list</params> -SELECT - SUM(stock.quantity) as inventory, - section.title AS section_title, - resource.title AS resource_title, - resource.relative_url AS resource_relative_url, - MAX(movement_line.path) as path, - movement.variation_text AS variation_text -FROM - catalog, movement, stock, catalog as section, category as node_category, category as section_category, catalog as resource, catalog as movement_line -WHERE - catalog.uid = movement.uid -AND catalog.uid = stock.uid -AND movement.is_accountable = 1 -AND movement_line.uid = movement.uid -AND movement.resource_uid = resource.uid -AND stock.section_uid = section.uid -AND section_category.category_uid=<dtml-var "portal_categories.group.Coramy.getUid()"> -AND stock.section_uid = section_category.uid -AND (node_category.category_uid=<dtml-var "portal_categories.site.Stock_MP.getUid()"> -OR node_category.category_uid=<dtml-var "portal_categories.site.Stock_PF.getUid()">) -AND stock.node_uid = node_category.uid -<dtml-if resource>AND resource.relative_url = <dtml-sqlvar resource type="string"> -</dtml-if><dtml-if to_date> AND movement.stop_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if simulation_state> AND (<dtml-in simulation_state> catalog.simulation_state = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if> -GROUP BY - resource.uid, movement.variation_text -ORDER BY - inventory \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/SimulationTool_zGetResourceList.zsql b/product/Coramy/skins/coramy_mrp/SimulationTool_zGetResourceList.zsql deleted file mode 100755 index 92c4f7b49be30176bac6f6a6606b3dc838f3df64..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/SimulationTool_zGetResourceList.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:0 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>portal_type:list</params> -SELECT DISTINCT - catalog.relative_url AS relative_url, - catalog.portal_type AS portal_type, - movement.variation_text AS variation_text -FROM - movement, catalog -WHERE - catalog.uid = movement.resource_uid -AND movement.is_accountable = 1 -<dtml-if portal_type>AND (<dtml-in portal_type> catalog.portal_type = <dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in> -) </dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/ZeroStock_buildOrderList.py b/product/Coramy/skins/coramy_mrp/ZeroStock_buildOrderList.py deleted file mode 100755 index 4022508e064ddbcc37c21db64260150609c929d7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/ZeroStock_buildOrderList.py +++ /dev/null @@ -1,61 +0,0 @@ -## Script (Python) "ZeroStock_buildOrderList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return context.portal_simulation.zero_stock.deleteContent(context.portal_simulation.zero_stock.contentIds()) - -if 0: - # Delete all proposed orders - #production_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.ordre_fabrication.getUid()]) - #context.ordre_fabrication.deleteContent(map(lambda b:b.id, production_list)) - buy_list = context.portal_catalog(simulation_state="auto_planned", parent_uid=[context.commande_achat.getUid()]) - #return map(lambda b:b.id, buy_list) - #context.commande_achat.deleteContent(map(lambda b:b.id, buy_list)) - - # Empty Zero Stock - context.portal_simulation.zero_stock.deleteContent(context.portal_simulation.zero_stock.contentIds()) - - context.portal_simulation.commitTransaction() # Release any SQL locks - - # Expand Zero Stock as many times as needed (1 or 2 for the Coramy case) - # for i in range(0,1): - context.portal_simulation.portal_simulation.zero_stock.expand() - -# Collect movements in Zero Stock applied rule -zs_movement_list = context.portal_simulation.zero_stock.contentValues() -#return len(zs_movement_list ) -#context.portal_simulation.commitTransaction() # Release any SQL locks - -# keep only movements with a Modele resource -movement_list = [] -for movement in zs_movement_list: - resource_value = movement.getResourceValue() - if resource_value is not None: - movement_list.append(movement) - -# Parse movements into a root group -root_group = context.portal_simulation.collectMovement(movement_list) -order_list = context.portal_simulation.buildOrderList(root_group) - -# update produced orders -for order in order_list: - order.autoPlan() - order.purchase_order_apply_condition() - -context.portal_simulation.commitTransaction() # Release any SQL locks -return "Done" - -# reEmpty Zero Stock because we don't want to see the zero_stock quantities in the columns future_stock -context.portal_simulation.zero_stock.deleteContent(context.portal_simulation.zero_stock.contentIds()) - -request = context.REQUEST -redirect_url = '%s/view?%s' % ( context.absolute_url() - , 'portal_status_message=%s+propositions+OF+créés.' % len(order_list) - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_mrp/inventory_MP_list.form b/product/Coramy/skins/coramy_mrp/inventory_MP_list.form deleted file mode 100755 index b98671b9a0559250e0319e935ae8dbc4b155b321..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_MP_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste d'inventaires MP</title> - <row_length>4</row_length> - <name>inventory_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Inventaire'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', "Date d'inventaire")]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Inventaire'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', "Date d'inventaire")]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Inventory MP', 'Inventory MP')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>inventory_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Inventaires</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_MP_view.form b/product/Coramy/skins/coramy_mrp/inventory_MP_view.form deleted file mode 100755 index acf1942a2374d32ba2109e00b547259735487a22..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_MP_view.form +++ /dev/null @@ -1,344 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('inventory', 'Inventaire'), ('price', 'Prix'), ('quantity_unit', 'Unit\xe9'), ('item_id_list', 'Lots en stock')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('inventory', 'inventory'), ('price', 'price'), ('item_id_list', 'item_id_list'), ('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>inventory_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_PF_list.form b/product/Coramy/skins/coramy_mrp/inventory_PF_list.form deleted file mode 100755 index ede3632541bdacf7e0eee12a113541fb21fe6641..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_PF_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste d'inventaires PF</title> - <row_length>4</row_length> - <name>inventory_PF_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Inventaire'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', "Date d'inventaire")]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Inventaire'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', "Date d'inventaire")]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Inventory PF', 'Inventory PF')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>inventory_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Inventaires</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_PF_view.form b/product/Coramy/skins/coramy_mrp/inventory_PF_view.form deleted file mode 100755 index 2e5cd7643925e39dc80fabf5ebed0bc68b61eafc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_PF_view.form +++ /dev/null @@ -1,344 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_PF.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('inventory', 'Inventaire'), ('price', 'Prix'), ('quantity_unit', 'Unit\xe9'), ('item_id_list', 'Lots en stock')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('inventory', 'inventory'), ('price', 'price'), ('item_id_list', 'item_id_list'), ('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_aggregated_view.form b/product/Coramy/skins/coramy_mrp/inventory_aggregated_view.form deleted file mode 100755 index ea0418da76b8f033af8d8ef2c320476751b98def..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_aggregated_view.form +++ /dev/null @@ -1,230 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('description', 'Description'), ('resource_title', 'Produit'), ('total_inventory', 'Inventaire'), ('total_price', 'Montant'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_lines_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_cell_view.form b/product/Coramy/skins/coramy_mrp/inventory_cell_view.form deleted file mode 100755 index 7fce2cc63b86eb1af7dfd5738ed1c8977a85c899..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_cell_view.form +++ /dev/null @@ -1,271 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Cellule d'inventaire</title> - <row_length>4</row_length> - <name>inventory_cell_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Cellule</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventaire</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Entrée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Sortie</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'N\xb0 Lot'), ('resource_title', 'Produit'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile'), ('getLocation', 'Emplacement')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">DeliveryCell_zGetItemList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Piece Tissu', 'Piece Tissu')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>piece_tissu_selection</selection_name> - <sort type="list">[('Id', 'Id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lots associées</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_line_price_view.form b/product/Coramy/skins/coramy_mrp/inventory_line_price_view.form deleted file mode 100755 index 0e6660a871fb85c83fb2b8fd073649a2f56dc7d2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_line_price_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'inventaire</title> - <row_length>4</row_length> - <name>inventory_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['inventory', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('inventory', 'inventory'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('inventory', 'inventory'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_listbase_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('inventory')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_line_quantity_view.form b/product/Coramy/skins/coramy_mrp/inventory_line_quantity_view.form deleted file mode 100755 index 266f6d9d7c33852c74297d49eac082aad48c4216..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_line_quantity_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'inventaire</title> - <row_length>4</row_length> - <name>inventory_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['inventory', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('inventory', 'inventory'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('inventory', 'inventory'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('inventory')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_line_view.form b/product/Coramy/skins/coramy_mrp/inventory_line_view.form deleted file mode 100755 index 89b8a244d4b7beb1940323e7a7f04246ad7b67d9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_line_view.form +++ /dev/null @@ -1,356 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne d'inventaire</title> - <row_length>4</row_length> - <name>inventory_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Assortiment', 'Assortiment'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_total_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Inventaire total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTotalInventory()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Valeur totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_view.form b/product/Coramy/skins/coramy_mrp/inventory_view.form deleted file mode 100755 index 36d89487b20b017acb6c98d9829444703972f809..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_view.form +++ /dev/null @@ -1,315 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('getVariationCategoryList', 'Variantes'), ('inventory', 'Inventaire'), ('price', 'Prix'), ('item_id_list', 'Lots en stock')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('inventory', 'inventory'), ('price', 'price'), ('item_id_list', 'item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_cells_selection</selection_name> - <sort type="list">[('Description', 'Description')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_view2.form b/product/Coramy/skins/coramy_mrp/inventory_view2.form deleted file mode 100755 index 492ce6cd67ce41a6edee166390335af0dbe64d8e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_view2.form +++ /dev/null @@ -1,315 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>listbox_variantes</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">2</size> - <title>my_variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>line/getVariationCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('description', 'Description'), ('resource_title', 'Produit'), ('variantes', 'Variantes'), ('inventory', 'Inventaire'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'quantity_unit'), ('inventory', 'inventory'), ('variantes', 'variantes')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_lines_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/inventory_view_details.form b/product/Coramy/skins/coramy_mrp/inventory_view_details.form deleted file mode 100755 index 0766f48bef7d7c47e6bc09ca1b8ffaab844ccc5d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/inventory_view_details.form +++ /dev/null @@ -1,284 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Inventaire</title> - <row_length>4</row_length> - <name>inventory_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Inventaire n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('getVariationCategoryList', 'Variantes'), ('inventory', 'Inventaire'), ('price', 'Prix'), ('item_id_list', 'Pi\xe8ces en stock')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('inventory', 'inventory'), ('price', 'price'), ('item_id_list', 'item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_cells_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_inventory</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/item_tissu_list.form b/product/Coramy/skins/coramy_mrp/item_tissu_list.form deleted file mode 100755 index 363ec2ca34bb1c290a8d30cde35bedc68e5bf14f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/item_tissu_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de pièces de tissus</title> - <row_length>4</row_length> - <name>item_tissu_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'N\xb0 pi\xe8ce'), ('default_resource_title', 'Tissu'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('default_source_title', 'Fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile'), ('getLastLocationTitle', 'Localisation'), ('getLocation', 'Emplacement')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'N\xb0 pi\xe8ce'), ('default_resource_title', 'Tissu'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('default_source_title', 'Fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile'), ('getLastLocationTitle', 'Localisation'), ('getLocation', 'Emplacement')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Piece Tissu', 'Piece Tissu')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>item_tissu_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method type="method">PieceTissu_zGetAvailableItemStat</stat_method> - <title>Pièces de tissu</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/item_tissu_view.form b/product/Coramy/skins/coramy_mrp/item_tissu_view.form deleted file mode 100755 index 9f58d4180c2af7bd9c555cfe226f288406c977f6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/item_tissu_view.form +++ /dev/null @@ -1,453 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Pièce de tissu</title> - <row_length>4</row_length> - <name>item_tissu_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° de pièce</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_resource_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>tissu</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Tissu', 'Tissu')]</portal_type> - <required type="int">0</required> - <title>Tissu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getVariationCategoryList()[0]</default> - <items>python:[('','')]+here.getVariationRangeCategoryItemList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_laize_utile</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Laize utile (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_last_location_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Localisation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_location</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Emplacement</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° pièce fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_bain_teinture</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° bain teinture</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité initiale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_remaining_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité restante</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'N\xb0 pi\xe8ce'), ('resource_title', 'Tissu'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('default_source_title', 'Fournisseur'), ('source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'N\xb0 pi\xe8ce'), ('resource_title', 'Tissu'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('default_source_title', 'Fournisseur'), ('source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Piece Tissu', 'Piece Tissu')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>sub_items_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Sous-pièces</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_MP_list.form b/product/Coramy/skins/coramy_mrp/movement_MP_list.form deleted file mode 100755 index d6dc7c71c2f1b82974f56211fa07b83c0ef33d9a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_MP_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de mouvements MP</title> - <row_length>4</row_length> - <name>movement_MP_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Mouvement'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', 'Date du mouvement')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Mouvement'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', 'Date du mouvement')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Movement MP', 'Movement MP')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>inventory_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Mouvements</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_MP_view.form b/product/Coramy/skins/coramy_mrp/movement_MP_view.form deleted file mode 100755 index a63efd899e16eb544e6cbe950e7cd006e82785bc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_MP_view.form +++ /dev/null @@ -1,402 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Mouvement MP</title> - <row_length>4</row_length> - <name>movement_MP_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Mouvement n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date de mouvement</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('production_quantity', 'Entr\xe9e'), ('consumption_quantity', 'Sortie'), ('quantity_unit', 'Unit\xe9'), ('produced_item_id_list', 'Lots entr\xe9s'), ('consumed_item_id_list', 'Lots sortis')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'quantity_unit'), ('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('produced_item_id_list', 'produced_item_id_list'), ('consumed_item_id_list', 'consumed_item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>movement_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de mouvement</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Consommation</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Production</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_produced_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots entrés</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">10</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_consumed_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots sortis</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">10</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_PF_list.form b/product/Coramy/skins/coramy_mrp/movement_PF_list.form deleted file mode 100755 index d5f9ff38e7d7e66c7ebb7926923066a105c47a69..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_PF_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de mouvements PF</title> - <row_length>4</row_length> - <name>movement_PF_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Mouvement'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', 'Date du mouvement')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Mouvement'), ('Description', 'Description'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_destination', 'Magasin'), ('start_date', 'Date du mouvement')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Movement PF', 'Movement PF')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>inventory_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Mouvements</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_PF_view.form b/product/Coramy/skins/coramy_mrp/movement_PF_view.form deleted file mode 100755 index 01f49d0aedb22550204d43d69123585d18210717..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_PF_view.form +++ /dev/null @@ -1,402 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Mouvement PF</title> - <row_length>4</row_length> - <name>movement_PF_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Mouvement n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">0</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date de mouvement</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_PF.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('production_quantity', 'Entr\xe9e'), ('consumption_quantity', 'Sortie'), ('quantity_unit', 'Unit\xe9'), ('produced_item_id_list', 'Lots entr\xe9s'), ('consumed_item_id_list', 'Lots sortis')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'quantity_unit'), ('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('produced_item_id_list', 'produced_item_id_list'), ('consumed_item_id_list', 'consumed_item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>movement_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de mouvement</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Consommation</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Production</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_produced_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots entrés</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">10</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_consumed_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Lots sortis</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">10</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_aggregated_view.form b/product/Coramy/skins/coramy_mrp/movement_aggregated_view.form deleted file mode 100755 index 293902cb79ba8750b2d0d0a963b1b3eb8fe63c03..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_aggregated_view.form +++ /dev/null @@ -1,230 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Mouvement MP</title> - <row_length>4</row_length> - <name>movement_aggregated_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Mouvement n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date d'inventaire</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Magasin</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.site.Stock_MP.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('description', 'Description'), ('resource_title', 'Produit'), ('total_quantity', 'Quantit\xe9'), ('total_price', 'Montant'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>inventory_lines_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de mouvement</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_line_consumption_quantity_view.form b/product/Coramy/skins/coramy_mrp/movement_line_consumption_quantity_view.form deleted file mode 100755 index edf6942773f058ea7052971163408774b84b70d5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_line_consumption_quantity_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de mouvement</title> - <row_length>4</row_length> - <name>movement_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_production_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('production_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_consumption_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('consumption_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_line_price_view.form b/product/Coramy/skins/coramy_mrp/movement_line_price_view.form deleted file mode 100755 index b1e0154d260cc6d63a3995320958f846315c90c7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_line_price_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de mouvement</title> - <row_length>4</row_length> - <name>movement_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_production_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('production_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_consumption_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('consumption_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_line_production_quantity_view.form b/product/Coramy/skins/coramy_mrp/movement_line_production_quantity_view.form deleted file mode 100755 index aabc952540302d0735150b3eb252580f5809d293..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_line_production_quantity_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de mouvement</title> - <row_length>4</row_length> - <name>movement_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('production_quantity', 'production_quantity'), ('consumption_quantity', 'consumption_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_production_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('production_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_consumption_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('consumption_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_mrp/movement_line_view.form b/product/Coramy/skins/coramy_mrp/movement_line_view.form deleted file mode 100755 index d573ec173928aec06d129c164628ecb460852c04..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_mrp/movement_line_view.form +++ /dev/null @@ -1,381 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de mouvement</title> - <row_length>4</row_length> - <name>movement_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Assortiment', 'Assortiment'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_consumption_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Sortie</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_production_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Entrée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTotalInventory()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Valeur totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/CreateVarianteModele.py b/product/Coramy/skins/coramy_pdm/CreateVarianteModele.py deleted file mode 100755 index 1316e651820043a36acc53817e6d3c1dbd0c3194..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/CreateVarianteModele.py +++ /dev/null @@ -1,46 +0,0 @@ -## Script (Python) "CreateVarianteModele" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -gamme = context.getDefaultValue('specialise',portal_type=('Gamme',)) -coloris_list = gamme.objectValues() -variantes_modele_list = context.objectValues() -variantes_id_list= [] -compteur = 0 - -for variante_modele in variantes_modele_list : - if variante_modele.portal_type == "Variante Modele" : - variantes_id_list.append(variante_modele.id) - -if len(coloris_list)>0 : - - for coloris in coloris_list : - if not(coloris.id in variantes_id_list) : - - compteur = compteur + 1 - context.invokeFactory(type_name="Variante Modele", - id=coloris.id, - RESPONSE=request.RESPONSE) - context[coloris.id].edit(description = coloris.getDescription()) - context[coloris.id].flushActivity(invoke=1) - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=%s+variantes+coloris+créées.'%compteur - ) - -else : - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Pas+de+gamme+de+coloris+définie.' - ) - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/Forme_categorySearchForm.form b/product/Coramy/skins/coramy_pdm/Forme_categorySearchForm.form deleted file mode 100755 index 09eae8fbc3372bfd19f992b28acf6c9ca8217d20..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Forme_categorySearchForm.form +++ /dev/null @@ -1,292 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Rechercher</title> - <name>Forme_categorySearchForm</name> - <action>Base_searchHandler</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Forme</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_referentiel_forme_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Catégorie forme</title> - </values> - <tales> - <default>here/getReferentielFormeList</default> - <items>here/portal_categories/referentiel_forme/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Forme de base</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Forme_categorySearchSql</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Espace Imaginaire</title> - </values> - <tales> - <default>here/getEipList</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_option_forme_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Option</title> - </values> - <tales> - <items>here/portal_categories/option_forme/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_etat</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'forme_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Forme_categorySearchSql.zsql b/product/Coramy/skins/coramy_pdm/Forme_categorySearchSql.zsql deleted file mode 100755 index eafb8f3e97fec2cc4cdf180cb7841ce442c64a62..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Forme_categorySearchSql.zsql +++ /dev/null @@ -1,135 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>collection_list="" -description="" -eip_list="" -etat="" -forme_id_list="" -id_list="" -option_forme_list="" -present_au_catalogue="" -referentiel_forme_list=""</params> -SELECT DISTINCT forme.id, forme.relative_url, forme.path, forme.Description, forme.forme_state -FROM catalog AS forme - -<dtml-if expr="_.len(collection_list)>0"> - <dtml-if expr="not (_.len(collection_list)==1 and collection_list[0]=='')"> - , category AS cat1 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(eip_list)>0"> - <dtml-if expr="not (_.len(eip_list)==1 and eip_list[0]=='')"> - , category AS cat2 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(option_forme_list)>0"> - <dtml-if expr="not (_.len(option_forme_list)==1 and option_forme_list[0]=='')"> - , category AS cat3 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(referentiel_forme_list)>0"> - <dtml-if expr="not (_.len(referentiel_forme_list)==1 and referentiel_forme_list[0]=='')"> - , category AS cat4 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(forme_id_list)>0"> - <dtml-if expr="not (_.len(forme_id_list)==1 and forme_id_list[0]=='')"> - , category AS cat5 - JOIN catalog ON catalog.uid=cat5.category_uid - </dtml-if> -</dtml-if> - - -WHERE forme.portal_type = "Forme" - -<dtml-if expr="_.len(id_list)>0"> - AND ( forme.id LIKE "<dtml-var expr="id_list[0]">" - <dtml-in prefix="loop" expr="_.range(_.len(id_list)-1)"> - OR forme.id LIKE "<dtml-var expr="id_list[loop_item+1]">" - </dtml-in> - ) -</dtml-if> - -<dtml-if expr="_.len(collection_list)>0"> - <dtml-if expr="not (_.len(collection_list)==1 and collection_list[0]=='')"> - AND cat1.uid=forme.uid - AND ( cat1.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(collection_list)-1)"> - OR cat1.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[loop_item+1])"> - </dtml-in> - ) - AND cat1.base_category_uid=<dtml-var "portal_categories.collection.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(eip_list)>0"> - <dtml-if expr="not (_.len(eip_list)==1 and eip_list[0]=='')"> - AND cat2.uid=forme.uid - AND ( cat2.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(eip_list)-1)"> - OR cat2.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[loop_item+1])"> - </dtml-in> - ) - AND cat2.base_category_uid=<dtml-var "portal_categories.eip.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(option_forme_list)>0"> - <dtml-if expr="not (_.len(option_forme_list)==1 and option_forme_list[0]=='')"> - AND cat3.uid=forme.uid - AND ( cat3.category_uid=<dtml-var expr="identify_category(base_category='option_forme',category=option_forme_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(option_forme_list)-1)"> - OR cat3.category_uid=<dtml-var expr="identify_category(base_category='option_forme',category=option_forme_list[loop_item+1])"> - </dtml-in> - ) - AND cat3.base_category_uid=<dtml-var "portal_categories.option_forme.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(referentiel_forme_list)>0"> - <dtml-if expr="not (_.len(referentiel_forme_list)==1 and referentiel_forme_list[0]=='')"> - AND cat4.uid=forme.uid - AND ( cat4.category_uid=<dtml-var expr="identify_category(base_category='referentiel_forme',category=referentiel_forme_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(referentiel_forme_list)-1)"> - OR cat4.category_uid=<dtml-var expr="identify_category(base_category='referentiel_forme',category=referentiel_forme_list[loop_item+1])"> - </dtml-in> - ) - AND cat4.base_category_uid=<dtml-var "portal_categories.referentiel_forme.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(forme_id_list)>0"> - <dtml-if expr="not (_.len(forme_id_list)==1 and forme_id_list[0]=='')"> - AND cat5.uid=forme.uid - AND cat5.base_category_uid=<dtml-var "portal_categories.specialise.uid"> - - AND ( (catalog.id LIKE "<dtml-var expr="forme_id_list[0]">") - <dtml-in prefix="loop" expr="_.range(_.len(forme_id_list)-1)"> - OR (catalog.id LIKE "<dtml-var expr="forme_id_list[loop_item+1]">") - </dtml-in> - ) - - </dtml-if> -</dtml-if> - - - -<dtml-if expr="not(etat=='')"> - AND forme.forme_state LIKE "<dtml-var expr="etat">" -</dtml-if> - -<dtml-if expr="not(description=='')"> - AND forme.Description LIKE "<dtml-var expr="description">" -</dtml-if> - diff --git a/product/Coramy/skins/coramy_pdm/Forme_thumbnailList.pt b/product/Coramy/skins/coramy_pdm/Forme_thumbnailList.pt deleted file mode 100755 index 1b9159184c78bcdfba86c259378402b560d75de3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Forme_thumbnailList.pt +++ /dev/null @@ -1,30 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - - <head> - <title>Formes</title> - <link rel=stylesheet type="text/css" href="http://erp5.coramy.fr/coramy/thumbnail.css" /> - </head> - - <body tal:define="forme_list python:here.object_action_list(selection_name='gamme_list')"> - <h1>Dessins techniques des formes sélectionnées</h1> - <div class="container"> - <tal:block tal:repeat="forme python:forme_list"> - <div class="float" tal:define="dessin_list python:forme.contentValues(filter={'portal_type':'Dessin Technique'})"> - <a href="/" tal:attributes="href python:forme.absolute_url()"> - <tal:block tal:condition="python: len(dessin_list)>0"> - <img class="image" src="logo.gif" alt="Dessin technique" tal:attributes="src python:dessin_list[0].absolute_url() + '?display=small&format=jpeg&resolution=150'" /> - </tal:block> - <tal:block tal:condition="python: len(dessin_list)==0"> - <p>Pas de dessin associé</p> - </tal:block> - <p tal:content="python:forme.getId()" /> - </a> - </div> - </tal:block> - <hr /> - </div> - - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/Resource_futureHistoryView.form b/product/Coramy/skins/coramy_pdm/Resource_futureHistoryView.form deleted file mode 100755 index 5c3d72a1c5bf085e65bf17f2b02ed3c6a1bed936..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_futureHistoryView.form +++ /dev/null @@ -1,100 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>future_history_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>bar_3d</chart_style> - <chart_title>Excédents Futurs</chart_title> - <css_class></css_class> - <data_method>Resource_getChartFutureHistoryList</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_future_history_char</selection_name> - <title>Historique Futur</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Resource_futureInventoryView.form b/product/Coramy/skins/coramy_pdm/Resource_futureInventoryView.form deleted file mode 100755 index cbc16c2f5a89ba5a8433844fe3fde0a8c87caee6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_futureInventoryView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>future_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('variation_text', 'Variante'), ('inventory', 'Quantit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">Resource_getInventoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>resource_future_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Stock futur par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>future_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>pie_3d</chart_style> - <chart_title>Excédents Futurs</chart_title> - <css_class></css_class> - <data_method>Resource_getChartInventoryList</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_future_inventory_chart</selection_name> - <title>Excédents Futurs</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Resource_getCartesianVariationList.py b/product/Coramy/skins/coramy_pdm/Resource_getCartesianVariationList.py deleted file mode 100755 index 3596d5ec0896d679ec1ff649e8e2f102ee25f7d6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_getCartesianVariationList.py +++ /dev/null @@ -1,27 +0,0 @@ -## Script (Python) "Resource_getCartesianVariationList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category_list=['coloris','taille','morphologie','variante'] -##title= -## -# returns a list of tuples combining possible variations -# we take only into account coloris, taille, variante and morphologie base categories - -raw_variation_base_category_list = context.getVariationBaseCategoryList() -variation_base_category_list = [] -for base_category in raw_variation_base_category_list : - if base_category in base_category_list : - variation_base_category_list.append(base_category) -variation_base_category_list.sort() -variation_list_list = [] - -for base_category in variation_base_category_list : - variation_list = map(lambda x:x[1], context.getVariationCategoryItemList(base_category_list=(base_category,))) - if variation_list != [] : - variation_list_list.append(variation_list) - -cartesian_variation_list = context.cartesianProduct(variation_list_list) -return cartesian_variation_list diff --git a/product/Coramy/skins/coramy_pdm/Resource_getSupplierItemList.py b/product/Coramy/skins/coramy_pdm/Resource_getSupplierItemList.py deleted file mode 100755 index 66d16a7e13e5baea80cca9016c498a7acfaf4ad2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_getSupplierItemList.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Resource_getSupplierItemList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# returns a list of all suppliers in relation source -# with resources with a given portal_type - -supplier_list = context.Resource_sqlSupplierSearch(portal_type_list = ('Tissu', 'Composant')) - -supplier_item_list = [] -sorted_supplier_title_list = [] -for supplier in supplier_list : - sorted_supplier_title_list.append(supplier.title) -sorted_supplier_title_list.sort() - -supplier_item_list = map(lambda x:(x,x),sorted_supplier_title_list) - -return supplier_item_list diff --git a/product/Coramy/skins/coramy_pdm/Resource_inventoryView.form b/product/Coramy/skins/coramy_pdm/Resource_inventoryView.form deleted file mode 100755 index fb7aadf5a17dadd6d3500846137c6adf4e04c735..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_inventoryView.form +++ /dev/null @@ -1,166 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('variation_text', 'Variante'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('inventory', 'Futur')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('variation_text', 'Variante'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('inventory', 'Futur')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('group_by_section', '0')]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/site/Stock_MP', 'Stocks MP'), ('portal_categories/site', 'Sites')]</domain_root_list> - <domain_tree type="int">1</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">getFutureInventoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>resource_current_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method type="method">getFutureInventoryStat</stat_method> - <title>Stock actuel par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>current_inventory_pie</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>bar_3d</chart_style> - <chart_title>Répartition</chart_title> - <css_class></css_class> - <data_method>getInventoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_pie</selection_name> - <title>Excédents Actuels</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Resource_movementHistoryView.form b/product/Coramy/skins/coramy_pdm/Resource_movementHistoryView.form deleted file mode 100755 index 17b8cd3b93c9d568aafb5ba3b2bd66afe615e1ec..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_movementHistoryView.form +++ /dev/null @@ -1,114 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('start_date', 'start_date'), ('getExplanationText', 'Explication'), ('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('variation_text', 'Variante'), ('quantity', 'Quantit\xe9'), ('getAggregateListText', 'Lots'), ('simulation_state', 'simulation_state')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/site/Stock_MP', 'Stocks MP'), ('portal_categories/site', 'Sites')]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">getMovementHistoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>movement_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method type="method">getMovementHistoryStat</stat_method> - <title>Stock actuel par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Resource_sqlResourceSupplierSearch.zsql b/product/Coramy/skins/coramy_pdm/Resource_sqlResourceSupplierSearch.zsql deleted file mode 100755 index 095e9dd6804398150d50afb47270ae1be9a8570e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_sqlResourceSupplierSearch.zsql +++ /dev/null @@ -1,27 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>supplier_title_list=""</params> -SELECT DISTINCT resource.id, resource.title, resource.relative_url, resource.path -FROM catalog AS resource, catalog as organisation, category - -WHERE resource.uid = category.uid -AND organisation.uid = category.category_uid -AND category.base_category_uid=<dtml-var "portal_categories.source.uid"> - -AND ( resource.portal_type = 'Tissu' -OR resource.portal_type = 'Composant') - -<dtml-if expr="_.len(supplier_title_list)>0"> -AND ( organisation.title = "<dtml-var expr="supplier_title_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(supplier_title_list)-1)"> -OR organisation.title = "<dtml-var expr="supplier_title_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Resource_sqlSupplierSearch.zsql b/product/Coramy/skins/coramy_pdm/Resource_sqlSupplierSearch.zsql deleted file mode 100755 index 5a8905b476d75c6fdf0153f57906f94fd8110bf4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Resource_sqlSupplierSearch.zsql +++ /dev/null @@ -1,25 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>portal_type_list="" -</params> -SELECT DISTINCT organisation.id, organisation.title, organisation.relative_url, organisation.path -FROM catalog AS organisation, catalog as resource, category - -WHERE resource.uid = category.uid -AND organisation.uid = category.category_uid -AND category.base_category_uid=<dtml-var "portal_categories.source.uid"> - -<dtml-if expr="_.len(portal_type_list)>0"> -AND ( resource.portal_type = "<dtml-var expr="portal_type_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(portal_type_list)-1)"> -OR resource.portal_type = "<dtml-var expr="portal_type_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Tissu_categorySearchForm.form b/product/Coramy/skins/coramy_pdm/Tissu_categorySearchForm.form deleted file mode 100755 index 4de6a399669a8f7a118bd0f7ad31c2274f332caa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Tissu_categorySearchForm.form +++ /dev/null @@ -1,338 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Rechercher</title> - <name>Tissu_categorySearchForm</name> - <action>Base_searchHandler</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Tissu</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Fournisseur</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_categorie_tissu</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Type tissu</title> - </values> - <tales> - <items>here/portal_categories/categorie_tissu/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_motif</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Motif</title> - </values> - <tales> - <items>here/portal_categories/motif/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_composition_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Composition</title> - </values> - <tales> - <default>here/getCompositionList</default> - <items>here/portal_categories/composition/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Famille</title> - </values> - <tales> - <default>here/getEipList</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_code_entretien_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Entretien</title> - </values> - <tales> - <items>here/portal_categories/code_entretien/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_composant_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'composant_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Tissu_categorySearchSql</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Tissu_categorySearchSql.zsql b/product/Coramy/skins/coramy_pdm/Tissu_categorySearchSql.zsql deleted file mode 100755 index e2e181dad63ff16b9676c152df40f2e74e00e83c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Tissu_categorySearchSql.zsql +++ /dev/null @@ -1,176 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>id_list="" -source_title="" -categorie_tissu="" -motif="" -description="" -collection_list="" -composition_list="" -eip_list="" -code_entretien_list="" -composant_state=""</params> -SELECT DISTINCT tissu.id, tissu.relative_url, tissu.path, tissu.Description, tissu.composant_state -FROM catalog AS tissu - -<dtml-if expr="_.len(categorie_tissu)>0"> - <dtml-if expr="not (_.len(categorie_tissu)==1 and categorie_tissu[0]=='')"> - , category AS cat1 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(motif)>0"> - <dtml-if expr="not (_.len(motif)==1 and motif[0]=='')"> - , category AS cat2 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(collection_list)>0"> - <dtml-if expr="not (_.len(collection_list)==1 and collection_list[0]=='')"> - , category AS cat3 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(composition_list)>0"> - <dtml-if expr="not (_.len(composition_list)==1 and composition_list[0]=='')"> - , category AS cat4 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(eip_list)>0"> - <dtml-if expr="not (_.len(eip_list)==1 and eip_list[0]=='')"> - , category AS cat5 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(code_entretien_list)>0"> - <dtml-if expr="not (_.len(code_entretien_list)==1 and code_entretien_list[0]=='')"> - , category AS cat6 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(source_title)>0"> - <dtml-if expr="not (_.len(source_title)==1 and source_title[0]=='')"> - , category AS cat7 - JOIN catalog ON catalog.uid=cat7.category_uid - </dtml-if> -</dtml-if> - - -WHERE tissu.portal_type = "Tissu" - - -<dtml-if expr="_.len(id_list)>0"> - AND ( tissu.id LIKE "<dtml-var expr="id_list[0]">" - <dtml-in prefix="loop" expr="_.range(_.len(id_list)-1)"> - OR tissu.id LIKE "<dtml-var expr="id_list[loop_item+1]">" - </dtml-in> - ) -</dtml-if> - - -<dtml-if expr="_.len(source_title)>0"> - <dtml-if expr="not (_.len(source_title)==1 and source_title[0]=='')"> - AND cat7.uid=tissu.uid - AND cat7.base_category_uid=<dtml-var "portal_categories.source.uid"> - AND ( (catalog.title LIKE "<dtml-var expr="source_title[0]">") - <dtml-in prefix="loop" expr="_.range(_.len(source_title)-1)"> - OR (catalog.title LIKE "<dtml-var expr="source_title[loop_item+1]">") - </dtml-in> - ) - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(categorie_tissu)>0"> - <dtml-if expr="not (_.len(categorie_tissu)==1 and categorie_tissu[0]=='')"> - AND cat1.uid=tissu.uid - AND ( cat1.category_uid=<dtml-var expr="identify_category(base_category='categorie_tissu',category=categorie_tissu[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(categorie_tissu)-1)"> - OR cat1.category_uid=<dtml-var expr="identify_category(base_category='categorie_tissu',category=categorie_tissu[loop_item+1])"> - </dtml-in> - ) - AND cat1.base_category_uid=<dtml-var "portal_categories.categorie_tissu.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(motif)>0"> - <dtml-if expr="not (_.len(motif)==1 and motif[0]=='')"> - AND cat2.uid=tissu.uid - AND ( cat2.category_uid=<dtml-var expr="identify_category(base_category='motif',category=motif[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(motif)-1)"> - OR cat2.category_uid=<dtml-var expr="identify_category(base_category='motif',category=motif[loop_item+1])"> - </dtml-in> - ) - AND cat2.base_category_uid=<dtml-var "portal_categories.motif.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(collection_list)>0"> - <dtml-if expr="not (_.len(collection_list)==1 and collection_list[0]=='')"> - AND cat3.uid=tissu.uid - AND ( cat3.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(collection_list)-1)"> - OR cat3.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[loop_item+1])"> - </dtml-in> - ) - AND cat3.base_category_uid=<dtml-var "portal_categories.collection.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(composition_list)>0"> - <dtml-if expr="not (_.len(composition_list)==1 and composition_list[0]=='')"> - AND cat4.uid=tissu.uid - AND ( cat4.category_uid=<dtml-var expr="identify_category(base_category='composition',category=composition_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(composition_list)-1)"> - OR cat4.category_uid=<dtml-var expr="identify_category(base_category='composition',category=composition_list[loop_item+1])"> - </dtml-in> - ) - AND cat4.base_category_uid=<dtml-var "portal_categories.composition.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(eip_list)>0"> - <dtml-if expr="not (_.len(eip_list)==1 and eip_list[0]=='')"> - AND cat5.uid=tissu.uid - AND ( cat5.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(eip_list)-1)"> - OR cat5.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[loop_item+1])"> - </dtml-in> - ) - AND cat5.base_category_uid=<dtml-var "portal_categories.eip.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="_.len(code_entretien_list)>0"> - <dtml-if expr="not (_.len(code_entretien_list)==1 and code_entretien_list[0]=='')"> - AND cat6.uid=tissu.uid - AND ( cat6.category_uid=<dtml-var expr="identify_category(base_category='code_entretien',category=code_entretien_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(code_entretien_list)-1)"> - OR cat6.category_uid=<dtml-var expr="identify_category(base_category='code_entretien',category=code_entretien_list[loop_item+1])"> - </dtml-in> - ) - AND cat6.base_category_uid=<dtml-var "portal_categories.code_entretien.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="not(composant_state=='')"> - AND tissu.composant_state LIKE "<dtml-var expr="composant_state">" -</dtml-if> - -<dtml-if expr="not(description=='')"> - AND tissu.Description LIKE "<dtml-var expr="description">" -</dtml-if> - diff --git a/product/Coramy/skins/coramy_pdm/Transformation_getAllTransformedResource.py b/product/Coramy/skins/coramy_pdm/Transformation_getAllTransformedResource.py deleted file mode 100755 index f6623cfbc4228744dce64c97bec6f603bf0ae891..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Transformation_getAllTransformedResource.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "Transformation_getAllTransformedResource" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -transformation = context - -transformation_list = [] -transformation_list.append(transformation) -transformation_list += transformation.getSpecialiseValueList(portal_type='Transformation') - -final_t_r_list = [] -for my_transformation in transformation_list : - raw_t_r_list=my_transformation.contentValues(filter={'portal_type':'Transformation Component'}) - transformed_resource_list =my_transformation.sort_object_list(unordered_list=raw_t_r_list, sort_order = (('resource', 'ASC'),) ) - final_t_r_list += transformed_resource_list - -return final_t_r_list diff --git a/product/Coramy/skins/coramy_pdm/TransformedComponent_getCorrespondanceList.py b/product/Coramy/skins/coramy_pdm/TransformedComponent_getCorrespondanceList.py deleted file mode 100755 index f395c3bf040ab73568c16bdd3c9501965437e365..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/TransformedComponent_getCorrespondanceList.py +++ /dev/null @@ -1,59 +0,0 @@ -## Script (Python) "TransformedComponent_getCorrespondanceList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -transformed_component = context -correspondance_list = [] - -variation_base_category_list = [] -q_variation_base_category_list = transformed_component.getQVariationBaseCategoryList() -v_variation_base_category_list = transformed_component.getVVariationBaseCategoryList() - -for base_category in q_variation_base_category_list : - variation_base_category_list.append(base_category) - -for base_category in v_variation_base_category_list : - if not base_category in variation_base_category_list : - variation_base_category_list.append(base_category) - -variation_base_category_list.sort() -variation_list_list = [] - -for base_category in variation_base_category_list : - variation_list = context.aq_parent.getVariationCategoryList(base_category_list = base_category) - variation_list_list.append(variation_list) - -cartesian_variation_list = context.cartesianProduct(variation_list_list) - -mapped_value_list = context.objectValues() -for variation_list in cartesian_variation_list : - quantity = '' - variation = [] - for mapped_value in mapped_value_list : - if mapped_value.test(transformed_component.asContext(categories=variation_list)) : - if mapped_value.getId().find('quantity') <> (-1): - try : - quantity = str(mapped_value.getProperty(key='quantity')) - except : pass - if mapped_value.getId().find('variation') <> (-1): - try : - variation = mapped_value.getVariationCategoryList() - except : pass - - if variation_list == [] and quantity == '' and variation == [] : - pass - else : - pretty_variation_1 = '- ' - for my_variation in variation_list : - pretty_variation_1 += my_variation+' - ' - pretty_variation_2 = '- ' - for my_variation in variation : - pretty_variation_2 += my_variation+' - ' - correspondance_list.append([pretty_variation_1, quantity, pretty_variation_2]) - -return correspondance_list diff --git a/product/Coramy/skins/coramy_pdm/Vetement_categorySearchForm.form b/product/Coramy/skins/coramy_pdm/Vetement_categorySearchForm.form deleted file mode 100755 index de61175950a22d5eb661452bd6543ba2ff65f7ef..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Vetement_categorySearchForm.form +++ /dev/null @@ -1,272 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Rechercher</title> - <name>Forme_categorySearchForm</name> - <action>Base_searchHandler</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Vêtement</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Formes concernées</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_correspondance_id</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Correspondances mesures</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">6</size> - <title>Plage de tailles</title> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_mesure_vetement_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">7</size> - <title>Mesures Coramy</title> - </values> - <tales> - <default>here/getMesureVetementList</default> - <items>here/portal_categories/mesure_vetement/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_etat</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'forme_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Vetement_categorySearchSql</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/Vetement_categorySearchSql.zsql b/product/Coramy/skins/coramy_pdm/Vetement_categorySearchSql.zsql deleted file mode 100755 index 3ad8f1cf47081fe0b26ccf488efa5a45fee32c2f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Vetement_categorySearchSql.zsql +++ /dev/null @@ -1,114 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>correspondance_id="" -forme_id_list="" -mesure_vetement_list="" -taille_list="" - -description="" -etat="" -id_list=""</params> -SELECT DISTINCT vetement.id, vetement.relative_url, vetement.path, vetement.Description, vetement.forme_state -FROM catalog AS vetement - -<dtml-if expr="_.len(correspondance_id)>0"> - <dtml-if expr="not (_.len(correspondance_id)==1 and correspondance_id[0]=='')"> - , catalog AS catal1 JOIN category AS cat1 ON catal1.uid=cat1.category_uid - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(forme_id_list)>0"> - <dtml-if expr="not (_.len(forme_id_list)==1 and forme_id_list[0]=='')"> - , catalog AS catal2 JOIN category AS cat2 ON catal2.uid=cat2.category_uid - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(mesure_vetement_list)>0"> - <dtml-if expr="not (_.len(mesure_vetement_list)==1 and mesure_vetement_list[0]=='')"> - , category AS cat3 - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(taille_list)>0"> - <dtml-if expr="not (_.len(taille_list)==1 and taille_list[0]=='')"> - , category AS cat4 - </dtml-if> -</dtml-if> - - -WHERE vetement.portal_type = "Vetement" - -<dtml-if expr="_.len(id_list)>0"> - AND ( vetement.id LIKE "<dtml-var expr="id_list[0]">" - <dtml-in prefix="loop" expr="_.range(_.len(id_list)-1)"> - OR vetement.id LIKE "<dtml-var expr="id_list[loop_item+1]">" - </dtml-in> - ) -</dtml-if> - -<dtml-if expr="_.len(correspondance_id)>0"> - <dtml-if expr="not (_.len(correspondance_id)==1 and correspondance_id[0]=='')"> - AND cat1.uid=vetement.uid - AND cat1.base_category_uid=<dtml-var "portal_categories.specialise.uid"> - AND catal1.portal_type = "Correspondance mesures" - AND ( (catal1.id LIKE "<dtml-var expr="correspondance_id[0]">") - <dtml-in prefix="loop" expr="_.range(_.len(correspondance_id)-1)"> - OR (catal1.id LIKE "<dtml-var expr="correspondance_id[loop_item+1]">") - </dtml-in> - ) - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(forme_id_list)>0"> - <dtml-if expr="not (_.len(forme_id_list)==1 and forme_id_list[0]=='')"> - AND cat2.uid=vetement.uid - AND cat2.base_category_uid=<dtml-var "portal_categories.specialise.uid"> - AND catal2.portal_type = "Forme" - AND ( (catal2.id LIKE "<dtml-var expr="forme_id_list[0]">") - <dtml-in prefix="loop" expr="_.range(_.len(forme_id_list)-1)"> - OR (catal2.id LIKE "<dtml-var expr="forme_id_list[loop_item+1]">") - </dtml-in> - ) - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(mesure_vetement_list)>0"> - <dtml-if expr="not (_.len(mesure_vetement_list)==1 and mesure_vetement_list[0]=='')"> - AND cat3.uid=vetement.uid - AND ( cat3.category_uid=<dtml-var expr="identify_category(base_category='mesure_vetement',category=mesure_vetement_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(mesure_vetement_list)-1)"> - OR cat3.category_uid=<dtml-var expr="identify_category(base_category='mesure_vetement',category=mesure_vetement_list[loop_item+1])"> - </dtml-in> - ) - AND cat3.base_category_uid=<dtml-var "portal_categories.mesure_vetement.uid"> - </dtml-if> -</dtml-if> - -<dtml-if expr="_.len(taille_list)>0"> - <dtml-if expr="not (_.len(taille_list)==1 and taille_list[0]=='')"> - AND cat4.uid=vetement.uid - AND ( cat4.category_uid=<dtml-var expr="identify_category(base_category='taille',category=taille_list[0])"> - <dtml-in prefix="loop" expr="_.range(_.len(taille_list)-1)"> - OR cat4.category_uid=<dtml-var expr="identify_category(base_category='taille',category=taille_list[loop_item+1])"> - </dtml-in> - ) - AND cat4.base_category_uid=<dtml-var "portal_categories.taille.uid"> - </dtml-if> -</dtml-if> - - -<dtml-if expr="not(etat=='')"> - AND vetement.vetement_state LIKE "<dtml-var expr="etat">" -</dtml-if> - -<dtml-if expr="not(description=='')"> - AND vetement.Description LIKE "<dtml-var expr="description">" -</dtml-if> - diff --git a/product/Coramy/skins/coramy_pdm/Vetement_thumbnailList.pt b/product/Coramy/skins/coramy_pdm/Vetement_thumbnailList.pt deleted file mode 100755 index 1704c3e8459381fe6533e9402f9866df398f370c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Vetement_thumbnailList.pt +++ /dev/null @@ -1,30 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - - <head> - <title>Vetements</title> - <link rel=stylesheet type="text/css" href="http://erp5.coramy.fr/coramy/thumbnail.css" /> - </head> - - <body tal:define="vetement_list python:here.object_action_list(selection_name='vetement_selection')"> - <h1>Dessins techniques des vêtements sélectionnés</h1> - <div class="container"> - <tal:block tal:repeat="vetement python:vetement_list"> - <div class="float" tal:define="dessin_list python:vetement.contentValues(filter={'portal_type':'Dessin Technique'})"> - <a href="/" tal:attributes="href python:vetement.absolute_url()"> - <tal:block tal:condition="python: len(dessin_list)>0"> - <img class="image" src="logo.gif" alt="Dessin technique" tal:attributes="src python:dessin_list[0].absolute_url() + '?display=small&format=jpeg&resolution=150'" /> - </tal:block> - <tal:block tal:condition="python: len(dessin_list)==0"> - <p>Pas de dessin associé</p> - </tal:block> - <p tal:content="python:vetement.getId()" /> - </a> - </div> - </tal:block> - <hr /> - </div> - - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/Vetement_zGetRelatedModeleList.zsql b/product/Coramy/skins/coramy_pdm/Vetement_zGetRelatedModeleList.zsql deleted file mode 100755 index 5a344a52a750b0b475618a3fe235bb6761e25a7d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/Vetement_zGetRelatedModeleList.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid</params> -select resource.relative_url, resource.path, resource.portal_type, resource.description from catalog, category, catalog as resource -where catalog.uid = category.category_uid -and category.uid = resource.uid -and category.base_category_uid = <dtml-var "portal_categories.specialise.uid"> -and catalog.uid = <dtml-var uid> -and ( resource.portal_type = "Modele" -or resource.portal_type = "Variante Morphologique" ) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assorted_resource_quantity_view.form b/product/Coramy/skins/coramy_pdm/assorted_resource_quantity_view.form deleted file mode 100755 index 20b28590078b77d5e60273be9ccdde363158986c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assorted_resource_quantity_view.form +++ /dev/null @@ -1,329 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('quantity', 'Quantity'), ('predicate_value_list', 'predicate_value_list'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>quantity</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('quantity', 'Quantity'), ('predicate_value_list', 'Predicate'), ('variation_category_list', 'Variation')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('mapped_value_property_list', 'mapped_value_property_list'), ('mapped_value_base_category_list', 'mapped_value_base_category_list'), ('domain_base_category_list', 'domain_base_category_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('A', 'A'), ('B', 'B'), ('C', 'C')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getQColumnItemList</columns> - <lines>here/getQLineItemList</lines> - <tabs>here/getQTabItemList</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python: here.getAssortedVariationBaseCategoryList()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python: here.getAssortmentVariationBaseCategoryList()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/quantity | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_predicate_value_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Predicate</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python: here.getAssortmentVariationCategoryList(cell_index)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python: here.getAssortedVariationCategoryList(cell_index)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assorted_resource_view.form b/product/Coramy/skins/coramy_pdm/assorted_resource_view.form deleted file mode 100755 index 95cd98bc3a103ab9c3412fe33eadbc45030c0e58..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assorted_resource_view.form +++ /dev/null @@ -1,233 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Transformation</title> - <row_length>4</row_length> - <name>transformation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Composant', 'Composant'), ('Gamme', 'Gamme'), ('Assortiment', 'Assortiment')]</portal_type> - <required type="int">0</required> - <title>Composant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_transformation_subpart</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Sous-ensemble</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_subpart/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_q_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Variations</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_efficiency</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Efficience (%)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assortiment_list.form b/product/Coramy/skins/coramy_pdm/assortiment_list.form deleted file mode 100755 index 82effa7a92c197a5986917ea11865aee9f37250a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assortiment_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des assortiments</title> - <row_length>4</row_length> - <name>assortiment_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Assortiment'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Assortiment'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Assortiment', 'Assortiment')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>assortiment_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Assortiments</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assortiment_list_export.py b/product/Coramy/skins/coramy_pdm/assortiment_list_export.py deleted file mode 100755 index c4499dc93d47e782fbdbe30ddec6bfed6ad9b969..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assortiment_list_export.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "assortiment_list_export" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('assortiment_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST - -for modele_item in modele_list: - modele=modele_item.getObject() - if modele <> None : - - ligne_modele = '' - ligne_modele += str(modele.getId())+'\t' - ligne_modele += str(modele.getCollection())+'\t' - - print ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return printed diff --git a/product/Coramy/skins/coramy_pdm/assortiment_price_view.form b/product/Coramy/skins/coramy_pdm/assortiment_price_view.form deleted file mode 100755 index 7aeb523559518340f91cfd377656e3f827835e1d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assortiment_price_view.form +++ /dev/null @@ -1,475 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Assortiment</title> - <row_length>4</row_length> - <name>assortiment_price_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Assortiment</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultDestinationTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</all_columns> - <all_editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'Quantit\xe9s')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'Quantit\xe9s')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[('predicate_operator', 'predicate_operator'), ('mapped_value_property_list', 'mapped_value_property_list'), ('domain_base_category_list', 'domain_base_category_list')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Element Tarif', 'Element Tarif')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>elements_tarif</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Eléments de tarif</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['taille', 'coloris']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['destination_base_price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_coloris_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['coloris'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_default_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille centrale</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultTaille</default> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_destination_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_range_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Quantités</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.portal_categories.quantity_range.getBaseItemList(base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assortiment_variated_reference_view.form b/product/Coramy/skins/coramy_pdm/assortiment_variated_reference_view.form deleted file mode 100755 index 8fc701c10527eb4af6bb6062fbf82f4a75c20387..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assortiment_variated_reference_view.form +++ /dev/null @@ -1,211 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Assortiment</title> - <row_length>4</row_length> - <name>assortiment_variated_reference_list</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_correspondance_tailles_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_tailles</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Tailles', 'Correspondance Tailles')]</portal_type> - <required type="int">0</required> - <title>Correspondance tailles</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_correspondance_mesures_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_mesures</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Mesures', 'Correspondance Mesures')]</portal_type> - <required type="int">0</required> - <title>Correspondance mesures</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('mapped_value_property_list', 'Type'), ('Description', 'Description'), ('variation_base_category_list', 'Variable selon')]</all_columns> - <all_editable_columns type="list">[('variation_base_category_list', 'variation_base_category_list')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('mapped_value_property_list', 'Type'), ('Description', 'Description'), ('variation_base_category_list', 'Variable selon')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('variation_base_category_list', 'variation_base_category_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Variated Reference', 'Variated Reference')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variated_reference_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Références variables</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationBaseCategoryList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_mapped_value_property_list</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Type</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/assortiment_view.form b/product/Coramy/skins/coramy_pdm/assortiment_view.form deleted file mode 100755 index 17b645af907a262f98cf62e1052e84697b89d311..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/assortiment_view.form +++ /dev/null @@ -1,377 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Assortiment</title> - <row_length>4</row_length> - <name>assortiment_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Assortiment</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_code_ean13</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Gencod</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>assortiment_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Espace imaginaire</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultDestinationTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Plage de tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('description', 'Description'), ('getPrototype', 'Prototype')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('description', 'Description'), ('getPrototype', 'Prototype')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Variante Modele', 'Variante Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variante_modele</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes coloris</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_dessins_list.py b/product/Coramy/skins/coramy_pdm/bareme_mesures_dessins_list.py deleted file mode 100755 index 80f420d47ceb1f8bb61c0b157b4cbd717c75f29a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_dessins_list.py +++ /dev/null @@ -1,55 +0,0 @@ -## Script (Python) "bareme_mesures_dessins_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=correspondance_mesures -##title= -## -modele = context -forme = modele.getDefaultValue('specialise',portal_type=['Forme']) -dessins_list = [] -dessins_final_list = [] - -if forme<>None: - dessins_list += forme.contentValues(filter={'portal_type':'Dessin Technique'}) - if len(dessins_list) == 1 : - dessins_final_list = dessins_list - else : - for dessin in dessins_list : - if dessin.getId().find('fl') == (-1) and dessin.getId().find('mes') == (-1) and dessin.getId().find('typ') == (-1): - dessins_final_list = [dessin] -if len(dessins_final_list) == 0 : - dessins_final_list = [None] - -vetements_list = modele.getValueList('specialise',portal_type=['Vetement']) -for vetement in vetements_list : - vetement_dessins_list =[] - # TEMPORARY modification because contentValues does not work in all cases - # dessins_list = vetement.contentValues(filter={'portal_type':'Dessin Technique'}) - dessins_list = [] - raw_dessins_list = vetement.objectValues() - for dessin_item in raw_dessins_list : - if dessin_item.getPortalType() == 'Dessin Technique' : - dessins_list.append(dessin_item) - - if len(dessins_list) == 1 and dessins_list[0].getId().find('fl') == (-1) and dessins_list[0].getId().find('typ') == (-1): - vetement_dessins_list = dessins_list - else : - for dessin in dessins_list : - if dessin.getId().find('fl') == (-1) and dessin.getId().find('typ') == (-1) : - vetement_dessins_list = [dessin] - - correspondance = vetement.getDefaultValue('specialise',portal_type=['Correspondance Mesures']) - if correspondance <> None and len(vetement_dessins_list) == 0 : - vetement_dessins_list.append(correspondance) - dessins_final_list += vetement_dessins_list - -if correspondance_mesures<>None : - dessins_final_list.append(correspondance_mesures) - -if len(dessins_final_list) == 1 : - dessins_final_list += [None] - -return dessins_final_list diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_mesures_list.py b/product/Coramy/skins/coramy_pdm/bareme_mesures_mesures_list.py deleted file mode 100755 index 8eebdc31547b8aa3d4b2452a0b955263eacd0b6b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_mesures_list.py +++ /dev/null @@ -1,72 +0,0 @@ -## Script (Python) "bareme_mesures_mesures_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=tailles_list=[], correspondance=None -##title= -## -vetement = context -tailles_list = tailles_list -mesures_list = vetement.getMesureVetementList() -final_mesures_list = [] - -# identification de la correspondance mesures à utiliser -# si pas de correspondance associée au modèle, on regarde s'il y en a une sur le vetement -if correspondance == None : - correspondance = vetement.getDefaultValue('specialise',portal_type=['Correspondance Mesures']) - -def category_property(category, property): - if category <> None : - if hasattr(category,property) : - return getattr(category,property) - else : - return " " - else : - return " " - -for mesure in mesures_list : - category_items = mesure.split("/") - category_mesure = context.portal_categories.mesure_vetement - for item in category_items : - category_mesure=category_mesure[item] - mesure_line = [] - - # Gestion du code mesure - if correspondance <> None : - if correspondance.getCell(mesure, 'Code_mesure', base_id='mesure_client') <> None : - mesure_line.append(correspondance.getCell(mesure, 'Code_mesure', base_id='mesure_client').mesure_client) - else : - # recup du code associé à la categorie - mesure_line.append(category_property(category_mesure,"code_mesure")) - else : - # recup du code associé à la categorie - mesure_line.append(category_property(category_mesure,"code_mesure")) - - # Gestion du libellé mesure - if correspondance <> None : - if correspondance.getCell(mesure, 'Libelle', base_id='mesure_client') <> None : - mesure_line.append(correspondance.getCell(mesure, 'Libelle', base_id='mesure_client').mesure_client) - else : - # recup du titre de la categorie - mesure_line.append(category_property(category_mesure,"title")) - else : - # recup du titre de la categorie - mesure_line.append(category_property(category_mesure,"title")) - - # Gestion des mesures par tailles - mesure_line_list = [] - for taille in tailles_list : - if vetement.getCell(mesure, taille, base_id='mesure_coramy') <> None : - mesure_line_list.append(" "+str(vetement.getCell(mesure, taille, base_id='mesure_coramy').mesure_coramy)+" ") - else : - mesure_line_list.append(" ") - mesure_line.append(mesure_line_list) - - # Gestion des tolérances - mesure_line.append(category_property(category_mesure,"tolerance")) - - final_mesures_list.append(mesure_line) - -return final_mesures_list diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_print.pt b/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_print.pt deleted file mode 100755 index fad0a4a83ffac34bb587342c707325bbfd17f17c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_print.pt +++ /dev/null @@ -1,120 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="mesure"> - </HEAD> - <BODY - tal:define="modele python:here.aq_parent; - vetement_list python:here.getValueList('specialise',portal_type=['Vetement']); - forme python:modele.getDefaultValue('specialise',portal_type=['Forme']); - correspondance_tailles python:modele.getDefaultValue('specialise',portal_type=['Correspondance Tailles']); - correspondance_mesures python:modele.getDefaultValue('specialise',portal_type=['Correspondance Mesures']); - dessins_final_list python:modele.bareme_mesures_dessins_list(correspondance_mesures) -"> - - <TABLE width="660" height="900" cellpadding="0" cellspacing="0"><!-- Tableau general --> - <TR><h3>Barème de mesures</h3></TR> - <TR height="10%"><!-- Infos --> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="bold">Modèle Coramy</TD> - <TD tal:content="python:modele.getId()"></TD> - <TD class="bold" tal:content="python:'Référence '+modules['string'].capwords(modele.getDefaultDestinationTitle(''))"></TD> - <TD tal:content="python:modele.getDestinationReference('')"></TD> - </TR> - <TR> - <TD class="bold">Forme</TD> - <TD tal:content="modele/getFormeId">5120</TD> - <TD class="bold">Modéliste</TD> - <TD tal:content="python:modele.modele_show_local_roles(['ModelisteDesigne'])"></TD> - </TR> - <TR> - <TD class="bold">Designation</TD> - <TD colspan="3" tal:content="python:modele.getDescription('')"></TD> - </TR> - </TABLE> - </TD> - </TR> - <TR><!-- Dessins --> - <TD> - <TABLE class="Border" align="center" width="100%"> - <TR> - <TD><SPAN tal:condition="python:dessins_final_list[1]<>None"><img src="" tal:attributes="src python:dessins_final_list[1].absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - <TD tal:attributes="rowspan python:(len(dessins_final_list)-1)"> <SPAN tal:condition="python:dessins_final_list[0]<>None"><img src="" tal:attributes="src python:dessins_final_list[0].absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - </TR> - <SPAN tal:condition="python:len(dessins_final_list)>2"> - <TR tal:repeat="image python:dessins_final_list[2:len(dessins_final_list)]"> - <TD><SPAN tal:condition="python:image<>None"><img src="" tal:attributes="src python:image.absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - </TR> - </SPAN> - </TABLE><!-- - <TABLE class="Border" align="center" width="100%"> - <TR> - <TD tal:attributes="colspan python:len(dessins_list)" align="left"><i>Dessin Technique</i></TD> - </TR> - <TR> <span tal:repeat="dessin dessins_list"> - <TD tal:condition="python:len(dessins_list)<=1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="50%"> - </TD> - <TD tal:condition="python:len(dessins_list)>1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"> - </TD></span> - </TR> - </TABLE> --> - </TD> - </TR> - <SPAN tal:repeat="vetement vetement_list"> - <TR><!-- Tableau de mesures --> - <TD valign="top"> - <SPAN class="bold" tal:content="python:'Vêtement : %s - %s' %(vetement.getId(),here.getMorphoType())"/> - <TABLE tal:define="tailles python:here.bareme_mesures_morphologie_tailles_list(correspondance_tailles)" border="1" width="100%"> - <TR tal:condition="python:correspondance_tailles<>None"> - <TD rowspan="2">Code</TD> - <TD width="100%" rowspan="2">Mesure</TD> - <TD nowrap>Taille</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD rowspan="2" align="center">Tol +/-</TD> - </TR> - <TR tal:condition="python:correspondance_tailles==None"> - <TD>Code</TD> - <TD width="100%">Mesure</TD> - <TD nowrap>Taille</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center">Tol +/-</TD> - </TR> - <TR tal:condition="python:correspondance_tailles<>None"> - <TD nowrap>Taille Coramy</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[0]))" - tal:content="python:tailles[0][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - </TR> - <TR tal:repeat="mesure_line python:vetement.bareme_mesures_mesures_list(tailles[2],correspondance_mesures)"><!-- BOUCLE SUR LES TAILLES --> - <TD tal:content="python:mesure_line[0]" align="center">A</TD> - <TD tal:content="python:mesure_line[1]" colspan="2">Longueur totale</TD> - <TD tal:repeat="mesure python:mesure_line[2]"> - <SPAN tal:content="structure mesure"/> - </TD> - <TD tal:content="python:mesure_line[3]" align="center">1</TD> - </TR> - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split('','\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - </SPAN> - - <TR> - <TD height="40%"><p class="Copy">© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p> - </TD> - </TR> - </TABLE> - </BODY> -</HTML> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_tailles_list.py b/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_tailles_list.py deleted file mode 100755 index 253b513aff1a0cd780046d4aaa398f314bb7b22f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_morphologie_tailles_list.py +++ /dev/null @@ -1,29 +0,0 @@ -## Script (Python) "bareme_mesures_morphologie_tailles_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=correspondance=None -##title= -## -var_morpho = context -vetement = context.aq_parent -tailles_list = vetement.getTailleList() -tailles_coramy = [] -tailles_client = [] -for taille in tailles_list : - taille_items = taille.split('/') - tailles_coramy.append(taille_items[len(taille_items)-1]) - -if correspondance == None : - tailles_client = tailles_coramy -else : - for taille in tailles_list : - if correspondance.getCell(var_morpho.getMorphoType(), taille, base_id='taille_client') <> None : - tailles_client.append(correspondance.getCell(var_morpho.getMorphoType(), taille, base_id='taille_client').taille_client) - else : - tailles_client.append("") - -tailles = [tailles_coramy, tailles_client, tailles_list] -return tailles diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_print.pt b/product/Coramy/skins/coramy_pdm/bareme_mesures_print.pt deleted file mode 100755 index af16fb907d630311aa76b2db5415a01856bf906c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_print.pt +++ /dev/null @@ -1,120 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="mesure"> - </HEAD> - <BODY - tal:define="modele python:here; - vetement_list python:modele.getValueList('specialise',portal_type=['Vetement']); - forme python:modele.getDefaultValue('specialise',portal_type=['Forme']); - correspondance_tailles python:modele.getDefaultValue('specialise',portal_type=['Correspondance Tailles']); - correspondance_mesures python:modele.getDefaultValue('specialise',portal_type=['Correspondance Mesures']); - dessins_final_list python:modele.bareme_mesures_dessins_list(correspondance_mesures) -"> - - <TABLE width="660" height="900" cellpadding="0" cellspacing="0"><!-- Tableau general --> - <TR><h3>Barème de mesures</h3></TR> - <TR height="10%"><!-- Infos --> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="bold">Modèle Coramy</TD> - <TD tal:content="python:modele.getId()"></TD> - <TD class="bold" tal:content="python:'Référence '+modules['string'].capwords(modele.getDefaultDestinationTitle(''))"></TD> - <TD tal:content="python:modele.getDestinationReference('')"></TD> - </TR> - <TR> - <TD class="bold">Forme</TD> - <TD tal:content="modele/getFormeId">5120</TD> - <TD class="bold">Modéliste</TD> - <TD tal:content="python:modele.modele_show_local_roles(roles=('ModelisteDesigne',),formated=0)"></TD> - </TR> - <TR> - <TD class="bold">Designation</TD> - <TD colspan="3" tal:content="python:modele.getDescription('')"></TD> - </TR> - </TABLE> - </TD> - </TR> - <TR><!-- Dessins --> - <TD> - <TABLE class="Border" align="center" width="100%"> - <TR> - <TD><SPAN tal:condition="python:dessins_final_list[1]<>None"><img src="" tal:attributes="src python:dessins_final_list[1].absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - <TD tal:attributes="rowspan python:(len(dessins_final_list)-1)"> <SPAN tal:condition="python:dessins_final_list[0]<>None"><img src="" tal:attributes="src python:dessins_final_list[0].absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - </TR> - <SPAN tal:condition="python:len(dessins_final_list)>2"> - <TR tal:repeat="image python:dessins_final_list[2:len(dessins_final_list)]"> - <TD><SPAN tal:condition="python:image<>None"><img src="" tal:attributes="src python:image.absolute_url() + '?display=small&format=jpeg&resolution=150'" ></SPAN></TD> - </TR> - </SPAN> - </TABLE><!-- - <TABLE class="Border" align="center" width="100%"> - <TR> - <TD tal:attributes="colspan python:len(dessins_list)" align="left"><i>Dessin Technique</i></TD> - </TR> - <TR> <span tal:repeat="dessin dessins_list"> - <TD tal:condition="python:len(dessins_list)<=1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="50%"> - </TD> - <TD tal:condition="python:len(dessins_list)>1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"> - </TD></span> - </TR> - </TABLE> --> - </TD> - </TR> - <SPAN tal:repeat="vetement vetement_list"> - <TR><!-- Tableau de mesures --> - <TD valign="top"> - <SPAN class="bold" tal:content="python:'Vêtement : %s' %vetement.getId()"/> - <TABLE tal:define="tailles python:modele.Variated_getTailleList(correspondance_tailles)" border="1" width="100%"> - <TR tal:condition="python:correspondance_tailles<>None"> - <TD rowspan="2">Code</TD> - <TD width="100%" rowspan="2">Mesure</TD> - <TD nowrap>Taille</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD rowspan="2" align="center">Tol +/-</TD> - </TR> - <TR tal:condition="python:correspondance_tailles==None"> - <TD>Code</TD> - <TD width="100%">Mesure</TD> - <TD nowrap>Taille</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center">Tol +/-</TD> - </TR> - <TR tal:condition="python:correspondance_tailles<>None"> - <TD nowrap>Taille Coramy</TD> - <TD align="center" tal:repeat="index python:range(len(tailles[0]))" - tal:content="python:tailles[0][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - </TR> - <TR tal:repeat="mesure_line python:vetement.bareme_mesures_mesures_list(tailles[2],correspondance_mesures)"><!-- BOUCLE SUR LES TAILLES --> - <TD tal:content="python:mesure_line[0]" align="center">A</TD> - <TD tal:content="python:mesure_line[1]" colspan="2">Longueur totale</TD> - <TD tal:repeat="mesure python:mesure_line[2]"> - <SPAN tal:content="structure mesure"/> - </TD> - <TD tal:content="python:mesure_line[3]" align="center">1</TD> - </TR> - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split('','\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - </SPAN> - - <TR> - <TD height="40%"><p class="Copy">© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p> - </TD> - </TR> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_pdm/bareme_mesures_tailles_list.py b/product/Coramy/skins/coramy_pdm/bareme_mesures_tailles_list.py deleted file mode 100755 index 7049e52558b756ee277645821da8d11cc7826157..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/bareme_mesures_tailles_list.py +++ /dev/null @@ -1,28 +0,0 @@ -## Script (Python) "bareme_mesures_tailles_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=correspondance=None -##title= -## -vetement = context -tailles_list = vetement.getTailleList() -tailles_coramy = [] -tailles_client = [] -for taille in tailles_list : - taille_items = taille.split('/') - tailles_coramy.append(taille_items[len(taille_items)-1]) - -if correspondance == None : - tailles_client = tailles_coramy -else : - for taille in tailles_list : - if correspondance.getCell(None, taille, base_id='taille_client') <> None : - tailles_client.append(correspondance.getCell(None, taille, base_id='taille_client').taille_client) - else : - tailles_client.append("") - -tailles = [tailles_coramy, tailles_client, tailles_list] -return tailles diff --git a/product/Coramy/skins/coramy_pdm/composant_history_view.pt b/product/Coramy/skins/coramy_pdm/composant_history_view.pt deleted file mode 100755 index c1109399fbd85dd63dffd2a75ca64f2d0028ca0f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_history_view.pt +++ /dev/null @@ -1,79 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/main_template/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - - -<strong>Historique</strong><br><br> - -<table border=1> - <tr align=center> - <td><b>Etat</b></td><td><b>Date - Heure</b></td><td><b>Utilisateur</b></td><td><b>Action</b></td><td><b>Commentaires</b></td> - </tr> - <span tal:repeat="history_item python:here.portal_workflow.getInfoFor(here, 'composant_history')"> - - <tr> - <td> - <span tal:condition="history_item/composant_state | nothing" - tal:content="history_item/composant_state"/> - </td> - <td> - <span tal:condition="history_item/composant_time | nothing" - tal:content="history_item/composant_time"/> - </td> - <td> - <span tal:condition="history_item/composant_actor | nothing" - tal:content="history_item/composant_actor"/> - </td> - <td> - <span tal:condition="history_item/composant_action | nothing" - tal:content="history_item/composant_action"/> - </td> - <td> - <span tal:condition="history_item/composant_comment | nothing" - tal:content="history_item/composant_comment"/> - </td> - </tr> - - </span> -</table> - - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/composant_list.form b/product/Coramy/skins/coramy_pdm/composant_list.form deleted file mode 100755 index 22b568da582d4ec174f5f717e8488b47501acb01..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de composants</title> - <row_length>4</row_length> - <name>composant_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('default_source_title', 'Fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('Description', 'Description'), ('composant_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('default_source_title', 'Fournisseur'), ('source_id', 'No fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('Description', 'Description'), ('composant_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('title', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Composant', 'Composant')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>composant_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Composants</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/composant_list_sort_on.form b/product/Coramy/skins/coramy_pdm/composant_list_sort_on.form deleted file mode 100755 index ce549478d8ccd6018420f460e47986793e630556..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>composant_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/composant_list_ui.form b/product/Coramy/skins/coramy_pdm/composant_list_ui.form deleted file mode 100755 index 3e3b7fe775a09d4daf614d9fe52feb82c590cbea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>composant_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/composant_search.form b/product/Coramy/skins/coramy_pdm/composant_search.form deleted file mode 100755 index 5c9bae0191bb03d5cdf327a87de3f26016168ba4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_search.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>composant_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Composant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/composant_view.form b/product/Coramy/skins/coramy_pdm/composant_view.form deleted file mode 100755 index ba7c53dfa3620f3d83aa8624716937ff55e81b49..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_view.form +++ /dev/null @@ -1,637 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Composant</title> - <row_length>4</row_length> - <name>composant_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Composant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_type_composant</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type composant</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/type_composant/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité de gestion</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix fournisseur</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix Coramy</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_priced_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix pour</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getPricedQuantity</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_source_base_price_validity</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Validité du prix</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>composant_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'composant_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_composition_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Composition</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCompositionList</default> - <items>here/portal_categories/composition/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_base_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Poids (g)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_length</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Longueur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_width</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Largeur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_height</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Hauteur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_nb_couleurs</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Nombre de couleurs</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_length_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Equivalent mètres</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('description', 'Description'), ('portal_type', 'Type')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''"), ('portal_type', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variantes</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/composant_workflow_valider_composant.form b/product/Coramy/skins/coramy_pdm/composant_workflow_valider_composant.form deleted file mode 100755 index 52a2b4759bea05412c3ac9936db981d9e3b75c25..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/composant_workflow_valider_composant.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le composant</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_composant</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/correspondance_list.form b/product/Coramy/skins/coramy_pdm/correspondance_list.form deleted file mode 100755 index 01856d7d236ef533dfec791670d43a0e87c5efc6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/correspondance_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de correspondances</title> - <row_length>4</row_length> - <name>correspondance_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Correspondance'), ('default_destination_title', 'Client'), ('Description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Correspondance'), ('default_destination_title', 'Client'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Correspondance Tailles', 'Correspondance Tailles'), ('Correspondance Mesures', 'Correspondance Mesures')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>tissu_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Correspondances</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/correspondance_mesures_client_view.form b/product/Coramy/skins/coramy_pdm/correspondance_mesures_client_view.form deleted file mode 100755 index 65becdc642e6b7e21ed98470e893f3ecfab27907..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/correspondance_mesures_client_view.form +++ /dev/null @@ -1,293 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Correspondance de mesures</title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Correspondance</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('mesure_client', 'mesure_client'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>mesure_client</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('mesure_client', 'mesure_client'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getReferenceMesureItemList</columns> - <lines>here/getMesureVetementItemList</lines> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:[here.portal_categories.reference_mesure.id,here.portal_categories.mesure_vetement.id]</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['mesure_client']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>matrixbox_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>cell/getVariationCategoryList | string:Error</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>matrixbox_mesure_client</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Mesure client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/mesure_client | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/correspondance_mesures_view.form b/product/Coramy/skins/coramy_pdm/correspondance_mesures_view.form deleted file mode 100755 index ccf21cdc78e0d141e8cc6ffd3a43c47fff01735c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/correspondance_mesures_view.form +++ /dev/null @@ -1,234 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Correspondance de mesures</title> - <row_length>4</row_length> - <name>correspondance_mesures_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Correspondance</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier image</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_mesure_vetement_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">6</size> - <title>Mesures Coramy</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getMesureVetementList</default> - <items>here/portal_categories/mesure_vetement/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference_mesure_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Références client</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getReferenceMesureList</default> - <items>here/portal_categories/reference_mesure/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/correspondance_tailles_client_view.form b/product/Coramy/skins/coramy_pdm/correspondance_tailles_client_view.form deleted file mode 100755 index 722ef9c7bd9ff1ad759c145cd30e0ed9fc05c43f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/correspondance_tailles_client_view.form +++ /dev/null @@ -1,293 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Correspondance de tailles</title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Correspondance</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('taille_client', 'taille_client'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>taille_client</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('taille_client', 'taille_client'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getTailleItemList</columns> - <lines>here/getLineItemList</lines> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:[here.portal_categories.taille.id,here.portal_categories.morpho_type.id]</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['taille_client']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>matrixbox_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>cell/getVariationCategoryList | string:Error</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>matrixbox_taille_client</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Taille client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/taille_client | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/correspondance_tailles_view.form b/product/Coramy/skins/coramy_pdm/correspondance_tailles_view.form deleted file mode 100755 index 4192d035aa1749b1bf26a91f55fb5858d70857af..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/correspondance_tailles_view.form +++ /dev/null @@ -1,182 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Correspondance de tailles</title> - <row_length>4</row_length> - <name>correspondance_tailles_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Correspondance</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultDestinationTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">6</size> - <title>Tailles Coramy</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_morpho_type_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Morphologies</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getMorphoTypeList</default> - <items>here/portal_categories/morpho_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/dessin_technique_view.form b/product/Coramy/skins/coramy_pdm/dessin_technique_view.form deleted file mode 100755 index 7ea4f911bfb8845099f0b98ef5255a5025df7ea1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/dessin_technique_view.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Dessin technique</title> - <row_length>4</row_length> - <name>variante_modele_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Dessin</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/element_tarif_list_create.py b/product/Coramy/skins/coramy_pdm/element_tarif_list_create.py deleted file mode 100755 index fce1f8a82dd944258a5aacbe4e221955eb73c42b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/element_tarif_list_create.py +++ /dev/null @@ -1,29 +0,0 @@ -## Script (Python) "element_tarif_list_create" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -elements_tarif_list = context.objectValues() -elements_list= [] - -for element in elements_tarif_list : - if element.portal_type == "Element Tarif" : - elements_list.append(element) - -new_id = "t"+str(len(elements_list)) -context.invokeFactory(type_name="Element Tarif", - id=new_id, - RESPONSE=request.RESPONSE) -context[new_id].flushActivity(invoke=1) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=1+éléments+de+tarif+créés.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/element_tarif_view.form b/product/Coramy/skins/coramy_pdm/element_tarif_view.form deleted file mode 100755 index 64e30e9161d520139eeb3fe9c1e110368be57bcd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/element_tarif_view.form +++ /dev/null @@ -1,463 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Elément tarif</title> - <row_length>4</row_length> - <name>element_tarfi_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Elément</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_destination_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_range_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Plages de quantité</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.portal_categories.quantity_range.getBaseItemList(base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('destination_base_price', 'Price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>destination_base_price</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('300', '300'), ('1000', '1000'), ('5000', '5000')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('destination_base_price', 'Price'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator'), ('domain_base_category_list', 'domain_base_category_list')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[]</tabs> - <title>Prix par quantités</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>python:here.portal_categories.getItemList(here.getQuantityRangeList())</columns> - <lines>python:((None,None),)</lines> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Plage de tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_default_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille centrale</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity_range']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['destination_base_price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_destination_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/destination_base_price | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:('quantity_range/'+cell_index[1],)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>matrixbox_title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/getTitle | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/etiquettes_collection.py b/product/Coramy/skins/coramy_pdm/etiquettes_collection.py deleted file mode 100755 index 1f32bacf092c27a41f721a568f30c13e7c29bb4a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/etiquettes_collection.py +++ /dev/null @@ -1,37 +0,0 @@ -## Script (Python) "etiquettes_collection" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST - -for modele_item in modele_list: - modele=modele_item.getObject() - - ligne_modele = '' - ligne_modele += modele.id+'£' - ligne_modele += modele.getCollection()+'£' - ligne_modele += modele.composition+'£' - - content_list = modele.objectValues() - price_list = [] - for content_item in content_list: - if content_item.portal_type == 'Element Tarif': - price_list.append(content_item) - - for price in price_list: - ligne_modele += price.description+'£' - ligne_modele += str(price.destination_base_price)+'£' - -# ligne_modele += '$' - print ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return printed diff --git a/product/Coramy/skins/coramy_pdm/etiquettes_collection_planches.py b/product/Coramy/skins/coramy_pdm/etiquettes_collection_planches.py deleted file mode 100755 index 3448f9a4eec91a256981b8187ae3a0d9ff27c195..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/etiquettes_collection_planches.py +++ /dev/null @@ -1,43 +0,0 @@ -## Script (Python) "etiquettes_collection_planches" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST -tab = '\t' -cr = '\r' -export = '' - -for modele_item in modele_list: - ligne_modele = '' - modele=modele_item.getObject() - - ligne_modele += modele.getId()+tab - ligne_modele += modele.getCollection()+tab - ligne_modele += string.capwords(modele.getComposition())+tab - ligne_modele += modele.getCodeEan13()+tab - - content_list = modele.objectValues() - price_list = [] - for content_item in content_list: - if content_item.portal_type == 'Element Tarif': - price_list.append(content_item) - - for price in price_list: - ligne_modele += price.description+tab - ligne_modele += str(price.destination_base_price)+tab - for i in range(3-len(price_list)): - ligne_modele += tab+tab - - ligne_modele += cr - export += 14 * ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return export diff --git a/product/Coramy/skins/coramy_pdm/etiquettes_collection_unitaires.py b/product/Coramy/skins/coramy_pdm/etiquettes_collection_unitaires.py deleted file mode 100755 index 21768d6c9e4c0fed6e386e082d291ba17105e6d9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/etiquettes_collection_unitaires.py +++ /dev/null @@ -1,43 +0,0 @@ -## Script (Python) "etiquettes_collection_unitaires" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST -tab = '\t' -cr = '\r' -export = '' - -for modele_item in modele_list: - ligne_modele = '' - modele=modele_item.getObject() - - ligne_modele += modele.getId()+tab - ligne_modele += modele.getCollection()+tab - ligne_modele += string.capwords(modele.getComposition())+tab - ligne_modele += modele.getCodeEan13()+tab - - content_list = modele.objectValues() - price_list = [] - for content_item in content_list: - if content_item.portal_type == 'Element Tarif': - price_list.append(content_item) - - for price in price_list: - ligne_modele += price.description+tab - ligne_modele += str(price.destination_base_price)+tab - for i in range(3-len(price_list)): - ligne_modele += tab+tab - - ligne_modele += cr - export += ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return export diff --git a/product/Coramy/skins/coramy_pdm/forme_list.form b/product/Coramy/skins/coramy_pdm/forme_list.form deleted file mode 100755 index 32da218f31032491efcb83f7ae8fd6d3bb022c09..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de formes</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Forme'), ('Description', 'Description'), ('forme_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Forme'), ('Description', 'Description'), ('forme_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Forme', 'Forme')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>gamme_list</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Formes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_list_sort_on.form b/product/Coramy/skins/coramy_pdm/forme_list_sort_on.form deleted file mode 100755 index e8476bbc3d155e1a35a94e531af06fd8a05c6401..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>forme_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_list_ui.form b/product/Coramy/skins/coramy_pdm/forme_list_ui.form deleted file mode 100755 index ea3931773b7ef8719dd44a6635a7e81fc756d0e7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>gamme_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_mise_au_point_view.form b/product/Coramy/skins/coramy_pdm/forme_mise_au_point_view.form deleted file mode 100755 index 5ed12550516568882ec8514c75d37f5e5ddf8e56..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_mise_au_point_view.form +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Mise au point Forme</title> - <row_length>4</row_length> - <name>forme_mise_au_point_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_nomenclature</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Nomenclature</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_mode_operatoire</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Mode opératoire</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_search.form b/product/Coramy/skins/coramy_pdm/forme_search.form deleted file mode 100755 index a647eca06daf331fee85b784ad0e2883e63c12e3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_search.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>gamme_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Forme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_vet.form b/product/Coramy/skins/coramy_pdm/forme_vet.form deleted file mode 100755 index 073be679a3ffcca6846b62184d04babce0df4c23..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_vet.form +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Forme</title> - <row_length>4</row_length> - <name>tissu_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'V\xeatement'), ('description', 'Description'), ('vetement_state', 'Etat'), ('portal_type', 'Type')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'V\xeatement'), ('description', 'Description'), ('vetement_state', 'Etat'), ('portal_type', 'Type')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''"), ('portal_type', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Vetement', 'Vetement')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>dessins</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Vêtements</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_view.form b/product/Coramy/skins/coramy_pdm/forme_view.form deleted file mode 100755 index 1d5dc0cad263b9146929313157419ba745828f77..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_view.form +++ /dev/null @@ -1,378 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Forme</title> - <row_length>4</row_length> - <name>tissu_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Forme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_referentiel_forme_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Catégorie forme</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getReferentielFormeList</default> - <items>here/portal_categories/referentiel_forme/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>forme</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Formes de base</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - <default>here/getFormeIdList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_option_forme</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Options</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getOptionFormeList</default> - <items>here/portal_categories/option_forme/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Famille</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getEipList</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_present_au_catalogue</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Présent au catalogue</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>etat</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'forme_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Dessin'), ('description', 'Description'), ('portal_type', 'Type')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Dessin'), ('description', 'Description'), ('portal_type', 'Type')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''"), ('portal_type', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Dessin Technique', 'Dessin Technique')]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>dessins</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Dessins techniques</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_lancer_prototype.form b/product/Coramy/skins/coramy_pdm/forme_workflow_lancer_prototype.form deleted file mode 100755 index 1daa612fab52cd4039f177a7886834c410b67485..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_lancer_prototype.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Lancer le prototype</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>lancer_prototype</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_dossier_technique.form b/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_dossier_technique.form deleted file mode 100755 index bb875756e664f91d08a36e7b77482f34d9402376..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_dossier_technique.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier le dossier technique</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_dossier_technique</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_forme.form b/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_forme.form deleted file mode 100755 index 5d366e5d5dcf4c4300fe40bdc6529d2141b98894..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_rectifier_forme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier la forme</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_forme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_soumettre_modelisme.form b/product/Coramy/skins/coramy_pdm/forme_workflow_soumettre_modelisme.form deleted file mode 100755 index f442daf94aee087c5994b25a1e6ea13f4920b708..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_soumettre_modelisme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Soumettre au modelisme</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>soumettre_modelisme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_valider_dossier_technique.form b/product/Coramy/skins/coramy_pdm/forme_workflow_valider_dossier_technique.form deleted file mode 100755 index ee9f80d160854ad33c804b3c10f6dcaa0d1fc281..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_valider_dossier_technique.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le dossier technique</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dossier_technique</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/forme_workflow_valider_forme.form b/product/Coramy/skins/coramy_pdm/forme_workflow_valider_forme.form deleted file mode 100755 index 9dde7d567d5f2db0ece290744eb0ae97d9f6e95c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/forme_workflow_valider_forme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la forme</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_forme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_list.form b/product/Coramy/skins/coramy_pdm/gamme_list.form deleted file mode 100755 index db232d711251452f915a1366570460d548a2220a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de gammes</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Num\xe9ro'), ('title', 'Titre'), ('Description', 'Description'), ('getCollection', 'Collection')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Gamme'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Gamme', 'Gamme')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>gamme_list</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Gammes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_list_sort_on.form b/product/Coramy/skins/coramy_pdm/gamme_list_sort_on.form deleted file mode 100755 index 9ba271cb2a85e5a09d9e5556008968cab19b1ab9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>gamme_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_list_ui.form b/product/Coramy/skins/coramy_pdm/gamme_list_ui.form deleted file mode 100755 index ea3931773b7ef8719dd44a6635a7e81fc756d0e7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>gamme_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_sql_tissu_search.zsql b/product/Coramy/skins/coramy_pdm/gamme_sql_tissu_search.zsql deleted file mode 100755 index 1c02fd7c1c2c6aa21c549f9a0bbd98fa977b870e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_sql_tissu_search.zsql +++ /dev/null @@ -1,18 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>tissu1 -tissu2</params> -SELECT DISTINCT catalog.id, catalog.uid, catalog.path, catalog.relative_url, catalog.parent_uid, catalog.Description -FROM catalog, catalog AS vgamme, catalog AS vtissu, category -WHERE vgamme.parent_uid=catalog.uid -AND vtissu.uid=category.category_uid -AND vtissu.relative_url LIKE "%<dtml-var tissu1>%" -AND vgamme.uid=category.uid -AND catalog.portal_type="Gamme" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_tissu_search.form b/product/Coramy/skins/coramy_pdm/gamme_tissu_search.form deleted file mode 100755 index a4f38f0d182023d7c32776f94ffbf8bea1432db6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_tissu_search.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>gamme_tissu_search_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_tissu1</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Tissu 1</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_tissu2</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Tissu 2</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_tissu_search_list.form b/product/Coramy/skins/coramy_pdm/gamme_tissu_search_list.form deleted file mode 100755 index 0255a86dcbb157f3611ed59ff652844885f13e63..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_tissu_search_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de gammes</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Num\xe9ro'), ('title', 'Titre'), ('Description', 'Description'), ('getCollection', 'Collection')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Gamme'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">gamme_sql_tissu_search</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Gamme', 'Gamme')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>gamme_tissu_search_list</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Gammes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/gamme_view.form b/product/Coramy/skins/coramy_pdm/gamme_view.form deleted file mode 100755 index 36c11ffb588086af49ec7447de7b8736017090cc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/gamme_view.form +++ /dev/null @@ -1,199 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Gamme</title> - <row_length>4</row_length> - <name>gamme_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Gamme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Famille</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getEipList</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('description', 'Description')]</all_columns> - <all_editable_columns></all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list></domain_root_list> - <domain_tree></domain_tree> - <editable type="int">1</editable> - <editable_columns></editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list></report_root_list> - <report_tree></report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name></selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/getModeleAggregatedModeOperatoire.py b/product/Coramy/skins/coramy_pdm/getModeleAggregatedModeOperatoire.py deleted file mode 100755 index e00e1fa4d195870e488ec93d49c3e5f0a3087146..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/getModeleAggregatedModeOperatoire.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "getModeleAggregatedModeOperatoire" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -modele = context -result = '' - -try: - vetement_list = modele.getValueList('specialise',portal_type=['Vetement']) - forme = modele.getDefaultValue('specialise',portal_type=['Forme']) - if forme.getModeOperatoire('') <> '' : - result += forme.getModeOperatoire('')+'\n' - for vetement in vetement_list : - if vetement.getModeOperatoire('') <> '' : - result += vetement.getModeOperatoire('')+'\n' - return result -except : - return "Titre calculé" diff --git a/product/Coramy/skins/coramy_pdm/getModeleAggregatedNomenclature.py b/product/Coramy/skins/coramy_pdm/getModeleAggregatedNomenclature.py deleted file mode 100755 index 5f7c41cc4f951ed2fcf68373a9637e50cd024084..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/getModeleAggregatedNomenclature.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "getModeleAggregatedNomenclature" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -modele = context -result = '' - -try: - vetement_list = modele.getValueList('specialise',portal_type=['Vetement']) - forme = modele.getDefaultValue('specialise',portal_type=['Forme']) - if forme.getNomenclature('') <> '' : - result += forme.getNomenclature('')+'\n' - for vetement in vetement_list : - if vetement.getNomenclature('') <> '' : - result += vetement.getNomenclature('')+'\n' - return result -except : - return "Titre calculé" diff --git a/product/Coramy/skins/coramy_pdm/getModelisteDesigne.py b/product/Coramy/skins/coramy_pdm/getModelisteDesigne.py deleted file mode 100755 index 47d5bb4868b25ee4a5f387fa0a49f58fabea1d58..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/getModelisteDesigne.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "getModelisteDesigne" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -result = context.modele_show_local_roles(['ModelisteDesigne']) -return result diff --git a/product/Coramy/skins/coramy_pdm/grille_consommation_quantity_view.form b/product/Coramy/skins/coramy_pdm/grille_consommation_quantity_view.form deleted file mode 100755 index 357b0e231eeab0cdec377fc967aa09d6cf85ae40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/grille_consommation_quantity_view.form +++ /dev/null @@ -1,131 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Grille</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('quantity', 'Quantity'), ('id', 'id')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>quantity</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('quantity', 'Quantity')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getTailleItemList</columns> - <lines>here/getTailleItemList</lines> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/quantity | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/grille_consommation_update.py b/product/Coramy/skins/coramy_pdm/grille_consommation_update.py deleted file mode 100755 index 616fb481b4a9aabdbac9df7427dc26cb23c51e01..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/grille_consommation_update.py +++ /dev/null @@ -1,50 +0,0 @@ -## Script (Python) "grille_consommation_update" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=reference_taille, form_id -##title= -## -items = context.getTailleList() -request = context.REQUEST - -# This is a bug fix related to an issue in Base -# which does not update attributes if the value is unchanged - -default_quantity = {} -for j in items: - cell = context.newCell(reference_taille, j, base_id='quantity') - try: - default_quantity[j] = cell.quantity - except: - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Error+Missing+Data.' - ) - return request[ 'RESPONSE' ].redirect( redirect_url ) - -reference_quantity = default_quantity[reference_taille] - -if reference_quantity is None or reference_quantity == 0: - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Error+Zero+Value.' - ) - return request[ 'RESPONSE' ].redirect( redirect_url ) - -for i in items: - for j in items: - cell = context.newCell(i, j, base_id='quantity') - if default_quantity[j] is not None: - try: - cell.edit(quantity = default_quantity[j] / default_quantity[i] ) - except: - pass - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Grille+Consommation+Updated.' - ) -return request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/grille_consommation_update_form.form b/product/Coramy/skins/coramy_pdm/grille_consommation_update_form.form deleted file mode 100755 index 396816aa5ae5722242d5f589ed1a031482155c6d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/grille_consommation_update_form.form +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Update</title> - <row_length>4</row_length> - <name>consommation_update_form</name> - <pt>form_view_dialog</pt> - <action>grille_consommation_update</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_reference_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Taille de réference</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTailleList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/grille_consommation_view.form b/product/Coramy/skins/coramy_pdm/grille_consommation_view.form deleted file mode 100755 index a5083552c31707cf2f047cbdde67a97b987c0964..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/grille_consommation_view.form +++ /dev/null @@ -1,117 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Grille de consommation</title> - <row_length>4</row_length> - <name>grille_consommation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Grille</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Plage de tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele2transformation.py b/product/Coramy/skins/coramy_pdm/modele2transformation.py deleted file mode 100755 index ac6768c8cddb6ec27d614abb5980fed8fd97b21e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele2transformation.py +++ /dev/null @@ -1,32 +0,0 @@ -## Script (Python) "modele2transformation" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='view', form_id2='', selection_index='', selection_name='', batch_mode=0 -##title= -## -request = context.REQUEST -modele = context - -pricing_transformation = modele.modele_transformation() - -if pricing_transformation is not None : - if form_id2<>'': - redirect_url = '%s/%s?form_id=%s' % (pricing_transformation.absolute_url() - , form_id - , form_id2 - ) - else : - redirect_url = '%s/%s' % (pricing_transformation.absolute_url() - , form_id - ) - -else : - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Pas+de+transformation+définie.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/modele2transformation_access.py b/product/Coramy/skins/coramy_pdm/modele2transformation_access.py deleted file mode 100755 index 72e298de4407c4c19781726d70928523bbde94ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele2transformation_access.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "modele2transformation_access" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -context.modele2transformation(form_id='transformation_view') diff --git a/product/Coramy/skins/coramy_pdm/modele2transformation_details.py b/product/Coramy/skins/coramy_pdm/modele2transformation_details.py deleted file mode 100755 index 679b20091e6df2a1b905dad47331c1f9dbe090d7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele2transformation_details.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "modele2transformation_details" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -context.modele2transformation(form_id='transformation_expanded_view_form', form_id2='transformation_view') diff --git a/product/Coramy/skins/coramy_pdm/modele2transformation_print.py b/product/Coramy/skins/coramy_pdm/modele2transformation_print.py deleted file mode 100755 index cc67a28cf2c476708a377125beeee5f172d8a6dd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele2transformation_print.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "modele2transformation_print" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -context.modele2transformation(form_id='transformation_print_form', form_id2='transformation_view') diff --git a/product/Coramy/skins/coramy_pdm/modele_catalog.pt b/product/Coramy/skins/coramy_pdm/modele_catalog.pt deleted file mode 100755 index a23de96a1603905e1196e58fd334ab3d34c276bf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_catalog.pt +++ /dev/null @@ -1,99 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </HEAD> - <BODY> - <SPAN tal:define="modele_list python:here.object_action_list(selection_name='modele_selection',max_nb=20)"> - <TABLE tal:repeat="modele modele_list" width="660" height="955" cellpadding="0" cellspacing="0" class="PageA4"> - <SPAN tal:define="forme python:modele.getDefaultValue('specialise',portal_type=['Forme']); - variantes_coloris_list python:modele.sort_object_list(unordered_list=modele.contentValues(filter={'portal_type':'Variante Modele'}), - sort_order = (('prototype', 'DESC'),('id', 'ASC'),) ); - - correspondance_tailles python:modele.getDefaultValue('specialise',portal_type=['Correspondance Tailles']); - correspondance_mesures python:modele.getDefaultValue('specialise',portal_type=['Correspondance Mesures']); - col_nb python:3; - lin_nb python:3; - nb_coloris python:len(variantes_coloris_list); - "> - <TR> - <TD colspan="2"><!-- Entete --> - <TABLE width="100%"> - <TR> - <TD class="Titre" width="30%"><p tal:repeat="eip modele/getEipList"><span tal:replace="eip"></span></p></TD> - <TD width="30%"> </TD> - <TD width="40%" class="Client" tal:content="modele/getDefaultDestinationTitle">Client</TD> - </TR> - <TR> - <TD></TD> - <TD class="Titre" tal:content="modele/getDestinationReference">ref client</TD> - <TD></TD> - </TR> - </TABLE><br> - </TD> - </TR> - <TR> - <TD width="50%" valign="top"><!-- Tailles & composition --> - <br><br><br> - - <TABLE border="1" width="100%" tal:define="tailles python:modele.bareme_mesures_tailles_list(correspondance_tailles)"> - <TR class="Titre2"> - <TD tal:attributes="colspan python:len(tailles[1])"><b>SIZES</b></TD> - </TR> - <TR> - <TD tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - </TR> - </TABLE><br><br> - <TABLE border="1" width="100%" > - <TR class="Titre2"> - <TD><b>COMPOSITION</b></TD> - </TR> - <TR> - <TD tal:content="modele/getComposition"></TD> - </TR> - </TABLE><br><br> - <TABLE border="1" width="100%"> - <TR class="Titre2"> - <TD><b>DESCRIPTION</b></TD> - </TR> - <TR> - <TD tal:content="modele/getDescription"></TD> - </TR> - </TABLE> - - </TD> - <TD align="center"><!-- Col. principal, prototype --> - <img src="" - tal:attributes="src python:'%s?display=small&format=jpeg&resolution=300' % variantes_coloris_list[0].getPath()" /><br> - <span class="Compo" tal:content="python:variantes_coloris_list[0].getDestinationReference()" /> - </TD> - </TR> - <TR> - <TD colspan="2"><!-- Autres coloris --> - <TABLE width="100%"> - <SPAN tal:repeat="i python:range(lin_nb)"> - <TR > - <SPAN tal:repeat="j python:range(col_nb)"> - <SPAN tal:condition="python:(i*col_nb)+j+1<nb_coloris"> - <TD align="center" tal:define="variante_coloris python:variantes_coloris_list[(i*col_nb)+j+1]"> - <img src="" - tal:attributes="src python:'%s?display=small&format=jpeg&resolution=150' % variante_coloris.getPath()" width="35%"/><br> - <span class="Compo" tal:content="python:variante_coloris.getDestinationReference()" /> - </TD> - </SPAN> - </SPAN> - </TR> - </SPAN> - </TABLE> - </TD> - </TR> - <TR height="100%"> - <TD/> - </TR> - </SPAN> - </TABLE> - </SPAN> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_pdm/modele_default_search.form b/product/Coramy/skins/coramy_pdm/modele_default_search.form deleted file mode 100755 index 44651bf2356510cad04b2434d7eda9c6e2fcdfb9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_default_search.form +++ /dev/null @@ -1,266 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>modele_default_search_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modele_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modèle</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Forme</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_gamme_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Gamme</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>python:'rien du tout'</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Espace Imaginaire</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>python:'rien du tout'</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_marque_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Marque</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>python:'rien du tout'</default> - <items>here/portal_categories/marque/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_modele_origine_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Origine</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>python:'rien du tout'</default> - <items>here/portal_categories/modele_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_default_search_list.form b/product/Coramy/skins/coramy_pdm/modele_default_search_list.form deleted file mode 100755 index d20f97d46dde015c6e7d9957c03b029db7bd50e0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_default_search_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">modele_sql_default_search</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_dessins_list.py b/product/Coramy/skins/coramy_pdm/modele_dessins_list.py deleted file mode 100755 index daf3bca8b323fb360fb76d863b4bbc459396b703..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_dessins_list.py +++ /dev/null @@ -1,32 +0,0 @@ -## Script (Python) "modele_dessins_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -modele = context -forme = modele.getDefaultValue('specialise',portal_type=['Forme']) - -if forme<>None: - dessins_list1 = forme.objectValues() -else : - dessins_list1 = [] - -vetements_list = modele.getValueList('specialise',portal_type=['Vetement']) - -final_list = [] - -for dessin in dessins_list1 : - if dessin.portal_type == 'Dessin Technique' : - final_list.append(dessin) - -for vetement in vetements_list : - dessins_list2 = vetement.objectValues() - for dessin in dessins_list2 : - if dessin.portal_type == 'Dessin Technique' : - final_list.append(dessin) - -return final_list diff --git a/product/Coramy/skins/coramy_pdm/modele_history_view.pt b/product/Coramy/skins/coramy_pdm/modele_history_view.pt deleted file mode 100755 index 37fa949e254b4ba24cc1ea18ac95f1eb1e0977ea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_history_view.pt +++ /dev/null @@ -1,78 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/view_master/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - -<br> - -<table border=1> - <tr align=center> - <td><b>Etat</b></td><td><b>Date - Heure</b></td><td><b>Utilisateur</b></td><td><b>Action</b></td><td><b>Commentaires</b></td> - </tr> - <span tal:repeat="history_item python:here.portal_workflow.getInfoFor(here, 'modele_history')"> - - <tr> - <td> - <span tal:condition="history_item/modele_state | nothing" - tal:content="history_item/modele_state"/> - </td> - <td> - <span tal:condition="history_item/modele_time | nothing" - tal:content="history_item/modele_time"/> - </td> - <td> - <span tal:condition="history_item/modele_actor | nothing" - tal:content="history_item/modele_actor"/> - </td> - <td> - <span tal:condition="history_item/modele_action | nothing" - tal:content="history_item/modele_action"/> - </td> - <td> - <span tal:condition="history_item/modele_comment | nothing" - tal:content="history_item/modele_comment"/> - </td> - </tr> - - </span> -</table> - - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/modele_id_search_list.form b/product/Coramy/skins/coramy_pdm/modele_id_search_list.form deleted file mode 100755 index 1526bcd7aa5b6574df642a127089b82fd3ca217c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_id_search_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">sql_id_search</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_list.form b/product/Coramy/skins/coramy_pdm/modele_list.form deleted file mode 100755 index fadeba602b5452aaba0a8be6423db326b71a02ad..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getModeleTemplate', 'Modele pere'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme'), ('getModelisteDesigne', 'Modeliste')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_list2.form b/product/Coramy/skins/coramy_pdm/modele_list2.form deleted file mode 100755 index b0a36cad162d3f6af0819af2a0d2288e43fa86b3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list2.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - <list_method>python:here.portal_catalog</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_list_export.py b/product/Coramy/skins/coramy_pdm/modele_list_export.py deleted file mode 100755 index 55fc1f96940d63f752c503062b30057a86670be1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_export.py +++ /dev/null @@ -1,27 +0,0 @@ -## Script (Python) "modele_list_export" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST - -for modele_item in modele_list: - modele=modele_item.getObject() - if modele <> None : - - ligne_modele = '' - ligne_modele += str(modele.getId())+'\t' - ligne_modele += str(modele.getModeleOrigine())+'\t' - ligne_modele += str(modele.getCollection())+'\t' - - print ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return printed diff --git a/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_coramy.py b/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_coramy.py deleted file mode 100755 index 8194634027b120707dc56b73d98bf5f9c914d077..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_coramy.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "modele_list_set_gencod_coramy" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST - -for modele_item in modele_list: - modele=modele_item.getObject() - modele.setEan13Modele(modele.portal_categories.group.Coramy) diff --git a/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_houvenaegel.py b/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_houvenaegel.py deleted file mode 100755 index dca8c1c0a46096267c7bbf65e8eb62e2936a5d33..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_set_gencod_houvenaegel.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "modele_list_set_gencod_houvenaegel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST - -for modele_item in modele_list: - modele=modele_item.getObject() - modele.setEan13Modele(modele.portal_categories.group.Coramy.Houvenaegel) diff --git a/product/Coramy/skins/coramy_pdm/modele_list_sort_on.form b/product/Coramy/skins/coramy_pdm/modele_list_sort_on.form deleted file mode 100755 index cd9979e805b5a237a45804a037548d624526f79c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>modele_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_list_ui.form b/product/Coramy/skins/coramy_pdm/modele_list_ui.form deleted file mode 100755 index a0cd88eab52f6b1b13303aaef18568bba9ae21a9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>person_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_list_update_gencod.py b/product/Coramy/skins/coramy_pdm/modele_list_update_gencod.py deleted file mode 100755 index ba03c65a106ebc75a1069fbfbbbda652c89688a6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_list_update_gencod.py +++ /dev/null @@ -1,18 +0,0 @@ -## Script (Python) "modele_list_update_gencod" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) -modele_list = selection(context=context) -request = context.REQUEST -CIP = 650000 - -for modele_item in modele_list: - modele=modele_item.getObject() - modele.edit(code_ean13 = modele.new_ean13_code('3','15971',CIP)) - CIP += 1 diff --git a/product/Coramy/skins/coramy_pdm/modele_mise_au_point_view.form b/product/Coramy/skins/coramy_pdm/modele_mise_au_point_view.form deleted file mode 100755 index 6cad046a4954620028e7da29fbf492e6f9b7d981..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_mise_au_point_view.form +++ /dev/null @@ -1,166 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_mise_au_point_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>aggegated_nomenclature</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">8</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Nomenclature aggrégée (non modifiable)</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - <default>python:here.getModeleAggregatedNomenclature()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_nomenclature</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Nomenclature</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>aggegated_mode_operatoire</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">8</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Mode opératoire aggrégé (non modifiable)</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - <default>python:here.getModeleAggregatedModeOperatoire()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_mode_operatoire</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Mode opératoire</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_pri_matrix_item_list.py b/product/Coramy/skins/coramy_pdm/modele_pri_matrix_item_list.py deleted file mode 100755 index 8bcc753027073ad1858b173352826aa9326d09ff..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_pri_matrix_item_list.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "modele_pri_matrix_item_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category_list=[] -##title= -## -modele = context - -first_list = modele.getVariationCategoryItemList(base_category_list=base_category_list) -final_list = [] -for list_item in first_list : - final_list.append((list_item[1],list_item[0])) - -if len(final_list)==0 : - final_list.append((None,None)) - -return final_list diff --git a/product/Coramy/skins/coramy_pdm/modele_pri_view.form b/product/Coramy/skins/coramy_pdm/modele_pri_view.form deleted file mode 100755 index 83d15c6a868d247f77271ccbd3187a99ff2396d1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_pri_view.form +++ /dev/null @@ -1,261 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_pri_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('pri', 'pri'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>pri</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('pri', 'pri'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_propertyr_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.modele_pri_matrix_item_list(base_category_list=('taille',))</columns> - <lines>python:here.modele_pri_matrix_item_list(base_category_list=('coloris',))</lines> - <tabs>python:[(None,None)]</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:filter(lambda x:x in ('coloris', 'taille'),here.getVariationBaseCategoryList())</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['pri']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:filter(lambda x: x is not None,cell_index)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_pri</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de revient</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty(key='pri')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_price_view.form b/product/Coramy/skins/coramy_pdm/modele_price_view.form deleted file mode 100755 index 6edadaf46859ad46521910cae37718337840f165..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_price_view.form +++ /dev/null @@ -1,570 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>modele_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'modele_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_tarif</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Tarif</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/tarif/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_cout_additionnel</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coût sup. (euros)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_marge</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coef. de marge</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_majoration</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coef. majoration</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_temps_piquage</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Temps piquage (min)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</all_columns> - <all_editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'Quantit\xe9s')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'Quantit\xe9s')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[('predicate_operator', 'predicate_operator'), ('mapped_value_property_list', 'mapped_value_property_list'), ('domain_base_category_list', 'domain_base_category_list')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Element Tarif', 'Element Tarif')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>elements_tarif</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Eléments de tarif</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['taille', 'coloris']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['destination_base_price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_coloris_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['coloris'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_default_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille centrale</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultTaille</default> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_destination_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_range_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Quantités</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.portal_categories.quantity_range.getBaseItemList(base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_print.pt b/product/Coramy/skins/coramy_pdm/modele_print.pt deleted file mode 100755 index 4456639130c7c0a72ea0a3220066f5806ee767df..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_print.pt +++ /dev/null @@ -1,253 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="gamme python:here.getDefaultValue('specialise',portal_type=['Gamme']); - forme python:here.getDefaultValue('specialise',portal_type=['Forme']); - dessins_list python:here.modele_dessins_list(); - variantes_modele_list python:here.contentValues(filter={'portal_type':'Variante Modele'}); - printed_coloris python:min([3,len(variantes_modele_list)]) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Modele : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Forme</b></i></td> - <td tal:content="here/getFormeId">77H</td> - <td><i><b>Collection</b></i></td> - <td><p tal:repeat="collection here/getCollectionList"><span tal:replace="collection">777HC401</span></p></td> - <td></td> - </tr> - <tr> - <td><i><b>Gamme </b></i></td> - <td tal:content="here/getGammeId">77H</td> - <td><i><b>Espace imaginaire</b></i></td> - <td><p tal:repeat="eip here/getEipList"><span tal:replace="eip">777HC401</span></p></td> - <td></td> - </tr> - <tr tal:condition="python:here.getDefaultDestinationTitle()<>''"> - <td><i><b>Client </b></i></td> - <td tal:content="here/getDefaultDestinationTitle">77H</td> - <td><i><b>Reference client</b></i></td> - <td tal:content="here/getDestinationReference">77H</td> - <td></td> - </tr> - <tr> - <td valign="top"><i><b>Modéliste</b></i> </td> - <td tal:content="python:here.modele_show_local_roles(['ModelisteDesigne'],formated=0)"></td> - <td valign="top"><i><b>Gestionaire</b></i> </td> - <td tal:content="python:here.modele_show_local_roles(['GestionaireDesigne'],formated=0)"></td> - </tr> - <tr> - <td valign="top"><i><b>Description</b></i> </td> - <td colspan="3" tal:content="here/getDescription">short homme surf hawai</td> - <td></td> - </tr> - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Dessin Technique --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Dessin Technique --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td tal:attributes="colspan python:len(dessins_list)" align="left"><b>Dessin - Technique</b></td> - </tr> - <tr> <span tal:repeat="dessin dessins_list"> <span tal:condition="python:dessin.portal_type == 'Dessin Technique'"> - <td tal:condition="python:len(dessins_list)<=1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=medium&format=jpeg&resolution=300'" width="50%"> - </td> - <td tal:condition="python:len(dessins_list)>1" align="center"><img src="" tal:attributes="src python:dessin.absolute_url() + '?display=medium&format=jpeg&resolution=300'" width="100%"> - </td> - </span> </span> </tr> - <tr> - <td tal:attributes="colspan python:len(dessins_list)" align="left"><b>Description technique</b></td> - </tr> - <tr> - <td colspan="3" tal:condition="python:forme<>None" - tal:content="forme/getDescription">short homme surf hawai</td> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Dessin Technique --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Nomenclature --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Nomenclature --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td> - <table class="border" width="100%"> - <tr> - <td align="left"><b>Nomenclature Prototype</b></td> - </tr> - <tr tal:define="nomenclature_list python:modules['string'].split(here.getModeleAggregatedNomenclature()+here.getNomenclature(''),'\n')"> - <td width="100%"> <span tal:repeat="nomenclature_item nomenclature_list"> - <span tal:content="python:nomenclature_item"> </span><br> - </span> </td> - </tr> - <tr> - <td align="left"><b>Mode opératoire Prototype</b></td> - </tr> - <tr tal:define="nomenclature_list python:modules['string'].split(here.getModeleAggregatedModeOperatoire()+here.getModeOperatoire(''),'\n')"> - <td width="100%"> <span tal:repeat="nomenclature_item nomenclature_list"> - <span tal:content="python:nomenclature_item"> </span><br> - </span> </td> - </tr> - <tr> - <td></td> - <td width="100%"></td> - </tr> - </table> - </td> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr><!-- Border Bottom Nomenclature --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Gamme Coloris --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Coloris --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr colspan="1" - tal:attributes="colspan python:len(variantes_modele_list)"> - <td colspan="4" align="left"><b>Gamme de Coloris</b></td> - </tr> - <tr> - <td tal:repeat="variante_modele python:variantes_modele_list[0:printed_coloris]"> - <span tal:condition="python:gamme<>None"> - <table tal:define="variante_modele_id variante_modele/getId; - variante_gamme python:gamme.get(variante_modele_id,None)"> - <tr> - <td tal:content="variante_modele/getId" align=center> </td> - <td tal:condition="python:variante_modele.getPrototype() == 1" color="red"> - <font color="red">Prototype</font> </td> - </tr> - <tr> - <td align="center" colspan="2" - tal:define="modele_image python:here.get(variante_modele_id,None)"> - <img src="" - tal:condition="variante_modele_id" - tal:attributes="src python:'%s?display=small&format=jpeg&resolution=300' % modele_image.getPath()" /> - </td> - </tr> - <tr tal:condition="variante_gamme" - tal:repeat="variante_tissu python:variante_gamme.getValueList('couleur',portal_type=['Variante Tissu'])"> - <td tal:define="my_index repeat/variante_tissu/index" - tal:content="python: 'D%s :' % (my_index + 1)"> - D1 </td> - <td tal:content="variante_tissu/getRelativeUrl"> </td> - </tr> - </table> - </span></td> - </tr> - <tr> - <td colspan="2" align="left"><b>Composition</b></td> - </tr> - <tr> - <td width="100%"> <span tal:content="python:here.getComposition('')"> </span><br> - </td> - </tr> - </table></td> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Gamme Coloris --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Commentaires --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Commentaires --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td colspan="2" align="left"><b>Commentaires</b></td> - </tr> - <tr tal:define="commentaires_list python:modules['string'].split(here.getCommentaires(''),'\n')"> - <td width="100%"> <span tal:repeat="commentaires_item commentaires_list"> - <span tal:content="python:commentaires_item"> </span><br> - </span> </td> - </tr> - </table></td> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Commentaires --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> -</table> - - - - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_pdm/modele_print_list.py b/product/Coramy/skins/coramy_pdm/modele_print_list.py deleted file mode 100755 index 6d7881243b0d9aa7ff9b264c855b8841d21b9083..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_print_list.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "modele_print_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Retourne une liste de modèles -# si appelé sur un modèle, la liste contient uniquement le modèle -# si appelé sur le module modèle, la liste contient la sélection de modèles - -modele_list = [] -request = context.REQUEST -if context.portal_type == 'Modele' : - modele_list.append(context) -else : - selection = context.portal_selections.getSelectionFor('modele_selection',REQUEST=context.REQUEST) - modele_list = map((lambda x:x.getObject()),selection(context=context)) - -if len(modele_list) > 20 : - modele_list = modele_list[0:20] - -return modele_list diff --git a/product/Coramy/skins/coramy_pdm/modele_search.form b/product/Coramy/skins/coramy_pdm/modele_search.form deleted file mode 100755 index 210559276b658587b53cf6d93858d82a0a5db033..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>modele_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_forme_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Forme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_gamme_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Gamme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_search2.form b/product/Coramy/skins/coramy_pdm/modele_search2.form deleted file mode 100755 index ded694facdfb8b47517e90137ea0471a367f00bb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search2.form +++ /dev/null @@ -1,84 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>modele_id_search_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_portal_type</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>my_portal_type</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_search_id.form b/product/Coramy/skins/coramy_pdm/modele_search_id.form deleted file mode 100755 index 845180cfefbf32059306406aedd65eaa7fc0013f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search_id.form +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>modele_search_id_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modele_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_search_id_list.form b/product/Coramy/skins/coramy_pdm/modele_search_id_list.form deleted file mode 100755 index 14d192f7fd9366903cef6b529764e4eccec03456..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search_id_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">modele_sql_search_id</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_search_origine.form b/product/Coramy/skins/coramy_pdm/modele_search_origine.form deleted file mode 100755 index 6f0927c6991069811ce45987ae2ecbf1942a7d98..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search_origine.form +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>modele_search</name> - <pt>form_dialog</pt> - <action>modele_search_origine_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modele_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Origine du modèle</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/modele_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_search_origine_list.form b/product/Coramy/skins/coramy_pdm/modele_search_origine_list.form deleted file mode 100755 index 4b1f4331190a88672b85552d9343bf865babf5ee..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_search_origine_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de modèles</title> - <row_length>4</row_length> - <name>folder_contents</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('destination_reference', 'R\xe9f\xe9rence Client'), ('modele_state', 'Etat'), ('getDefaultCollection', 'Collection'), ('getEip', 'Espace imaginaire'), ('modele_state_modeliste', 'Modeliste'), ('modele_state_gestionaire', 'Gestionaire'), ('modele_state_probleme', 'Probleme')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Modele'), ('forme_id', 'Forme'), ('gamme_id', 'Gamme'), ('Description', 'Description'), ('default_destination_title', 'Client'), ('modele_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">modele_sql_search_origine</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>modele_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Modeles</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_set_gencod_coramy.py b/product/Coramy/skins/coramy_pdm/modele_set_gencod_coramy.py deleted file mode 100755 index baebe51bd8645134ebf1928515ff4aafd6c31243..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_set_gencod_coramy.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "modele_set_gencod_coramy" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -modele = context - -modele.setEan13Modele(modele.portal_categories.group.Coramy) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Gencod+mis+a+jour.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/modele_set_gencod_houvenaegel.py b/product/Coramy/skins/coramy_pdm/modele_set_gencod_houvenaegel.py deleted file mode 100755 index 09f8cfad4da20dfff9ca9d5f911fa266c1612549..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_set_gencod_houvenaegel.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "modele_set_gencod_houvenaegel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -modele = context - -modele.setEan13Modele(modele.portal_categories.group.Coramy.Houvenaegel) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Gencod+mis+a+jour.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/modele_show_local_roles.py b/product/Coramy/skins/coramy_pdm/modele_show_local_roles.py deleted file mode 100755 index 15c0c4aef63560b6f00d1f7f211abc18b860125c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_show_local_roles.py +++ /dev/null @@ -1,40 +0,0 @@ -## Script (Python) "modele_show_local_roles" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=roles=(), formated=1 -##title= -## -raw_local_roles = context.get_local_roles() -used_roles = {} -if len(roles)<>0 : - if 'ModelisteDesigne' in roles : - used_roles['ModelisteDesigne']='Modeliste' -if len(roles)<>0 : - if 'GestionaireDesigne' in roles : - used_roles['GestionaireDesigne']='Gestionaire client' -else : - used_roles['ModelisteDesigne']='Modeliste' - used_roles['GestionaireDesigne']='Gestionaire client' -local_roles = {} -key_roles = used_roles.keys() - -for user_roles in raw_local_roles: - for role in key_roles: - if role in user_roles[1]: - local_roles[used_roles[role]]=[] - local_roles[used_roles[role]].append(user_roles[0]) - -formated_roles='' - -key_roles = local_roles.keys() -for role in key_roles: - if formated==1 : - formated_roles += role+':' - for user in local_roles[role]: - formated_roles += user +',' - formated_roles += ' ' - - return str(formated_roles) diff --git a/product/Coramy/skins/coramy_pdm/modele_sql_default_search.zsql b/product/Coramy/skins/coramy_pdm/modele_sql_default_search.zsql deleted file mode 100755 index a88813b7b3e9aca8b4c0d7d1885bdc0b8d7e0615..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_sql_default_search.zsql +++ /dev/null @@ -1,107 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>modele_id_list="" -forme_id_list="" -gamme_id_list="" -collection_list="" -eip_list="" -marque_list="" -modele_origine_list=""</params> -SELECT DISTINCT modele.id, modele.relative_url, modele.path, modele.Description, modele.modele_state, modele.default_destination_title -FROM catalog AS modele -<dtml-if expr="_.len(collection_list)>0"> -, category AS cat1 -</dtml-if> -<dtml-if expr="_.len(eip_list)>0"> -, category AS cat2 -</dtml-if> -<dtml-if expr="_.len(marque_list)>0"> -, category AS cat3 -</dtml-if> -<dtml-if expr="_.len(modele_origine_list)>0"> -<dtml-if expr="not (_.len(modele_origine_list)==1 and modele_origine_list[0]=='')"> -, category AS cat4 -</dtml-if> -</dtml-if> -WHERE modele.portal_type = "Modele" - -<dtml-if expr="_.len(modele_id_list)>0"> -AND ( modele.id LIKE "<dtml-var expr="modele_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(modele_id_list)-1)"> -OR modele.id LIKE "<dtml-var expr="modele_id_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(forme_id_list)>0"> -AND ( modele.forme_id LIKE "<dtml-var expr="forme_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(forme_id_list)-1)"> -OR modele.forme_id LIKE "<dtml-var expr="forme_id_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(gamme_id_list)>0"> -AND ( modele.gamme_id LIKE "<dtml-var expr="gamme_id_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(gamme_id_list)-1)"> -OR modele.gamme_id LIKE "<dtml-var expr="gamme_id_list[loop_item+1]">" -</dtml-in> -) -</dtml-if> - -<dtml-if expr="_.len(collection_list)>0"> -AND cat1.uid=modele.uid -AND ( cat1.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[0])"> -<dtml-in prefix="loop" expr="_.range(_.len(collection_list)-1)"> -OR cat1.category_uid=<dtml-var expr="identify_category(base_category='collection',category=collection_list[loop_item+1])"> -</dtml-in> -) -AND cat1.base_category_uid=<dtml-var "portal_categories.collection.uid"> -</dtml-if> - - -<dtml-if expr="_.len(eip_list)>0"> -AND cat2.uid=modele.uid -AND ( cat2.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[0])"> -<dtml-in prefix="loop" expr="_.range(_.len(eip_list)-1)"> -OR cat2.category_uid=<dtml-var expr="identify_category(base_category='eip',category=eip_list[loop_item+1])"> -</dtml-in> -) -AND cat2.base_category_uid=<dtml-var "portal_categories.eip.uid"> -</dtml-if> - -<dtml-if expr="_.len(marque_list)>0"> -AND cat3.uid=modele.uid -AND ( cat3.category_uid=<dtml-var expr="identify_category(base_category='marque',category=marque_list[0])"> -<dtml-in prefix="loop" expr="_.range(_.len(marque_list)-1)"> -OR cat3.category_uid=<dtml-var expr="identify_category(base_category='marque',category=marque_list[loop_item+1])"> -</dtml-in> -) -AND cat3.base_category_uid=<dtml-var "portal_categories.marque.uid"> -</dtml-if> - -<dtml-if expr="_.len(modele_origine_list)>0"> -<dtml-if expr="not (_.len(modele_origine_list)==1 and modele_origine_list[0]=='')"> -AND cat4.uid=modele.uid -<dtml-if expr="modele_origine_list[0]<>''"> -AND ( cat4.category_uid=<dtml-var expr="identify_category(base_category='modele_origine',category=modele_origine_list[0])"> -<dtml-else> -AND ( cat4.category_uid <> 0 -</dtml-if> -<dtml-in prefix="loop" expr="_.range(_.len(modele_origine_list)-1)"> -<dtml-if expr="modele_origine_list[loop_item+1]<>''"> -OR cat4.category_uid=<dtml-var expr="identify_category(base_category='modele_origine',category=modele_origine_list[loop_item+1])"> -</dtml-if> -</dtml-in> -) -AND cat4.base_category_uid=<dtml-var "portal_categories.modele_origine.uid"> -</dtml-if> -</dtml-if> - diff --git a/product/Coramy/skins/coramy_pdm/modele_sql_search_destination_reference.zsql b/product/Coramy/skins/coramy_pdm/modele_sql_search_destination_reference.zsql deleted file mode 100755 index 8151aa336d9b8647008a3fd425f9c411a7a854fb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_sql_search_destination_reference.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>dest_ref_id</params> -SELECT DISTINCT modele.id, modele.relative_url, modele.path, modele.Description, modele.modele_state -FROM catalog AS modele -WHERE modele.destination_reference LIKE "<dtml-var dest_ref_id>" -AND modele.portal_type = "Modele" diff --git a/product/Coramy/skins/coramy_pdm/modele_sql_search_id.zsql b/product/Coramy/skins/coramy_pdm/modele_sql_search_id.zsql deleted file mode 100755 index eff8608aec18d42330ed750af0c370ffdf462bf6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_sql_search_id.zsql +++ /dev/null @@ -1,14 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>modele_id</params> -SELECT DISTINCT modele.id, modele.relative_url, modele.path, modele.Description, modele.modele_state -FROM catalog AS modele -WHERE modele.id LIKE "<dtml-var modele_id>" -AND modele.portal_type = "Modele" diff --git a/product/Coramy/skins/coramy_pdm/modele_sql_search_origine.zsql b/product/Coramy/skins/coramy_pdm/modele_sql_search_origine.zsql deleted file mode 100755 index deb9e2886084d0c20308e614d645a0678fdcd3cc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_sql_search_origine.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT modele.id, modele.relative_url, modele.path, modele.Description, modele.modele_state, modele.forme_id, -modele.gamme_id, modele.default_destination_title -FROM catalog AS modele, category -WHERE modele.portal_type = "Modele" -AND modele.uid=category.uid -AND category.base_category_uid = <dtml-var "portal_categories.modele_origine.uid"> -AND category.category_uid = <dtml-var "portal_categories.modele_origine.Creation.uid"> diff --git a/product/Coramy/skins/coramy_pdm/modele_transformation.py b/product/Coramy/skins/coramy_pdm/modele_transformation.py deleted file mode 100755 index 1281a48d0acb024a1ffa51d673e7175d5a51ed46..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_transformation.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "modele_transformation" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -modele = context - -# Find a transformation which allows to compute a price -transformation_list = modele.transformation_sql_search(modele_id = modele.getId()) - -# We search a transformation which state is "fini" -pricing_transformation = None -for transformation in transformation_list: - transformation = transformation.getObject() - if transformation is not None: - if transformation.portal_type == 'Transformation': - if transformation.getTransformationState() == 'fini': - pricing_transformation = transformation - break - -return pricing_transformation diff --git a/product/Coramy/skins/coramy_pdm/modele_update_price.py b/product/Coramy/skins/coramy_pdm/modele_update_price.py deleted file mode 100755 index 4e250f4a1a4c01d552a40b3115a8e718c93d7102..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_update_price.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "modele_update_price" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id, selection_index, selection_name, batch_mode=0 -##title= -## -message = "" -request = context.REQUEST - -for o in context.searchFolder(portal_type='Element Tarif'): - o = o.getObject() - error = o.element_tarif_compute_price(form_id=form_id, selection_index=selection_index, selection_name=selection_name, batch_mode=1) - if error is not None: - message += error - -if batch_mode: - return message -else: - if message is None: - message = "Prix mis à jour" - redirect_url = '%s/%s?selection_index=%s&selection_name=%s&%s' % ( context.absolute_url() - , form_id - , selection_index - , selection_name - , 'portal_status_message=%s' % message - ) - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/modele_variante_morphologique_view.form b/product/Coramy/skins/coramy_pdm/modele_variante_morphologique_view.form deleted file mode 100755 index 79b8c49f4fd9943bf783673c470b6ac48a0f3939..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_variante_morphologique_view.form +++ /dev/null @@ -1,86 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_variante_morphologique_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('getMorphoType', 'Morphologie'), ('Description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('getMorphoType', 'Morphologie'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Variante Morphologique', 'Variante Morphologique')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variante_morphologique_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes morphologiques</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_variated_reference_view.form b/product/Coramy/skins/coramy_pdm/modele_variated_reference_view.form deleted file mode 100755 index 65035c021e072d0a0259258ed31317ab8fb51ba7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_variated_reference_view.form +++ /dev/null @@ -1,211 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_variated_reference_list</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_correspondance_tailles_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_tailles</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Tailles', 'Correspondance Tailles')]</portal_type> - <required type="int">0</required> - <title>Correspondance tailles</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_correspondance_mesures_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_mesures</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Mesures', 'Correspondance Mesures')]</portal_type> - <required type="int">0</required> - <title>Correspondance mesures</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('mapped_value_property_list', 'Type'), ('Description', 'Description'), ('variation_base_category_list', 'Variable selon')]</all_columns> - <all_editable_columns type="list">[('variation_base_category_list', 'variation_base_category_list')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('mapped_value_property_list', 'Type'), ('Description', 'Description'), ('variation_base_category_list', 'Variable selon')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('variation_base_category_list', 'variation_base_category_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Variated Reference', 'Variated Reference')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variated_reference_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Références variables</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationBaseCategoryList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_mapped_value_property_list</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Type</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_view.form b/product/Coramy/skins/coramy_pdm/modele_view.form deleted file mode 100755 index e127de7e8f73caac3cfd906f4964ec4586fdefa3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_view.form +++ /dev/null @@ -1,697 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Modèle</title> - <row_length>4</row_length> - <name>modele_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_forme_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>forme</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Forme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_gamme_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>gamme</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Gamme</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_modele_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Origine</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/modele_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_modele_template</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Modele', 'Modele')]</portal_type> - <required type="int">0</required> - <title>Modèle père</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_vetement_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>forme</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Vetement', 'Vetement')]</portal_type> - <required type="int">0</required> - <title>Vêtements</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - <default>here/getVetementIdList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_composition</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Composition</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_code_ean13</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Gencod</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_nomenclature_douane</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Nomenclature douanière</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/nomenclature_douane/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_code_entretien_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Entretien</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/portal_categories/code_entretien/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Famille</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_marque</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Marque</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/marque/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultDestinationTitle</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Plage de tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_transformation_state_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Stades de production</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTransformationStateList</default> - <items>here/portal_categories/transformation_state/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>modele_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'modele_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('description', 'Description'), ('getPrototype', 'Prototype')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('description', 'Description'), ('getPrototype', 'Prototype')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Variante Modele', 'Variante Modele')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variante_modele</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes coloris</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_abandonner_modele.form b/product/Coramy/skins/coramy_pdm/modele_workflow_abandonner_modele.form deleted file mode 100755 index 06d8c1c4073e1ba8a90c6d35696130fa8a1c24eb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_abandonner_modele.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Abandonner le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>abandonner_modele</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_confirmer_accord_client.form b/product/Coramy/skins/coramy_pdm/modele_workflow_confirmer_accord_client.form deleted file mode 100755 index f8e4574695b55ae0b890c6b4217bff1c0c065b70..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_confirmer_accord_client.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Confirmer accord client</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>confirmer_accord_client</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_correction.form b/product/Coramy/skins/coramy_pdm/modele_workflow_correction.form deleted file mode 100755 index 0dc98fb915e7977e3ef63d89ee290e2556c6dd1c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_correction.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Corriger l'état</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>corriger_etat</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>action</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_designer_gestionaire.form b/product/Coramy/skins/coramy_pdm/modele_workflow_designer_gestionaire.form deleted file mode 100755 index f157584479c4ff4f402810b5b641121d8eeae419..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_designer_gestionaire.form +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Désigner un gestionaire client</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_local_gestionaire_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[('Maryvonne_Mathon', 'Maryvonne_Mathon'), ('Magdalena_Cousin', 'Magdalena_Cousin'), ('Carole_Billant', 'Carole_Billant'), ('Michele_Kmiecik', 'Michele_Kmiecik'), ('Laurence_Caron', 'Laurence_Caron'), ('Veronique_Tronet', 'Veronique_Tronet'), ('Michele_Grisolet', 'Michele_Grisolet'), ('Martine_Cirot', 'Martine_Cirot')]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Gestionaires client</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>designer_gestionaire_client</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_designer_modeliste.form b/product/Coramy/skins/coramy_pdm/modele_workflow_designer_modeliste.form deleted file mode 100755 index 55961fd47547a852423780f15c0857a89db7bf05..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_designer_modeliste.form +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Désigner un modéliste</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_local_modeliste_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[('Catherine_Bouchard', 'Catherine_Bouchard'), ('Christine_Deniel', 'Christine_Deniel'), ('Eric_Deguelte', 'Eric_Deguelte'), ('Josette_Leroy', 'Josette_Leroy'), ('Sylvie_Fevre', 'Sylvie_Fevre'), ('Marie-Claire_Godin', 'Marie-Claire_Godin'), ('Nathalie_Courquin', 'Nathalie_Courquin'), ('Sandrine_Dericke', 'Sandrine_Dericke')]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Modélistes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>designer_modeliste</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_brouillon.form b/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_brouillon.form deleted file mode 100755 index 6e4e2f32caefda4bc90f511d81d678d25b51394e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_brouillon.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Industrialiser le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>industrialiser_modele_brouillon</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_collection.form b/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_collection.form deleted file mode 100755 index fbeabbd0867497c4c72f832d4e6b4a85b363ca68..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_industrialiser_modele_collection.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Industrialiser le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>industrialiser_modele_collection</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_etude.form b/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_etude.form deleted file mode 100755 index 99fe2a757f8254000f5b1ab13c719379b9a7a67a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_etude.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Lancer l'étude</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>lancer_etude</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_prototype.form b/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_prototype.form deleted file mode 100755 index 8aa934ff8b7062b58fbc353d052d4b743e3041da..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_lancer_prototype.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Lancer un prototype</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>lancer_prototype</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_proposer_collection.form b/product/Coramy/skins/coramy_pdm/modele_workflow_proposer_collection.form deleted file mode 100755 index c849927617446ab889951a7469440af8841bead0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_proposer_collection.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Proposer en collection</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>proposer_collection</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_rectifier_modele.form b/product/Coramy/skins/coramy_pdm/modele_workflow_rectifier_modele.form deleted file mode 100755 index f4464219e53263eadd0d8313dbbfec54ef382431..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_rectifier_modele.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_modele</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_refuser_brouillon.form b/product/Coramy/skins/coramy_pdm/modele_workflow_refuser_brouillon.form deleted file mode 100755 index c5f5bf0685bd9fb1fc760a82d40c84cacf36e845..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_refuser_brouillon.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Refuser le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>refuser_brouillon</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_revendiquer_propriete.form b/product/Coramy/skins/coramy_pdm/modele_workflow_revendiquer_propriete.form deleted file mode 100755 index 2217a7cc45f0030a8d001968e5a5b06c46df9d93..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_revendiquer_propriete.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Revendiquer la propriété</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>revendiquer_propriete</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_solutionner_probleme_modelisme.form b/product/Coramy/skins/coramy_pdm/modele_workflow_solutionner_probleme_modelisme.form deleted file mode 100755 index 1bf337a41a0040164877a22e4d4abb862f0d0a77..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_solutionner_probleme_modelisme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Solutionner le problème</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>solutionner_probleme_modelisme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_modelisme.form b/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_modelisme.form deleted file mode 100755 index cb4473dfb226061f7c70508a82803cec4da352ed..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_modelisme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Soumettre au modélisme</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>soumettre_modelisme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_probleme_modelisme.form b/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_probleme_modelisme.form deleted file mode 100755 index 3a3e53ff6743c76e6aaeed5ab5259b411c52b1d1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_soumettre_probleme_modelisme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Soumettre un problème</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>soumettre_probleme_modelisme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_finition.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_finition.form deleted file mode 100755 index a5ac844c72b3a9663046527644e4c9610f1a2760..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_finition.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la finition</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dabord_finition</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gamme.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gamme.form deleted file mode 100755 index c40c175a19f0ba314dbfbbbedb96c195beca8483..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gamme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la gamme opératoire</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dabord_gamme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gradation.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gradation.form deleted file mode 100755 index 0f95ba0841bae52a094261b94208175399badc21..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_gradation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la gradation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dabord_gradation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_nomenclature.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_nomenclature.form deleted file mode 100755 index defaeb2555be35986102eb07e19450a30c9a439a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_dabord_nomenclature.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la nomenclature</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dabord_nomenclature</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_finition.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_finition.form deleted file mode 100755 index 4eb6a3b379d9d3a3f2322e9dc5a975b3e90ba757..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_finition.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la finition</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_ensuite_finition</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gamme.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gamme.form deleted file mode 100755 index a687ea0e8ae39ad6e375683a1fa92d74533151db..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gamme.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la gamme opératoire</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_ensuite_gamme</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gradation.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gradation.form deleted file mode 100755 index 60f97e86241e03a1e7de10c8738bebd86a647f0d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_gradation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la gradation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_ensuite_gradation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_nomenclature.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_nomenclature.form deleted file mode 100755 index 7d1f94dc91a92140265896b95151c275a7ed4e38..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_ensuite_nomenclature.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la nomenclature</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_ensuite_nomenclature</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_infos_client.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_infos_client.form deleted file mode 100755 index 3ad533ba3bbc0f639192eba833b387660f0c6192..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_infos_client.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider informations client</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_infos_client</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele.form deleted file mode 100755 index a8a569a1d3be2c7431d3a89a34620aa42e8fb717..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_modele</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele_reconduit.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele_reconduit.form deleted file mode 100755 index 6167083544932be2aae53b9db846fc21b8604b19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_modele_reconduit.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le modèle</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_modele_reconduit</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix.form deleted file mode 100755 index 393d25d8794e1d4d5c88c3cb50c2f5329fc7447e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le prix</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_prix</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix_reconduit.form b/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix_reconduit.form deleted file mode 100755 index 7bdf4afae562dee451220e8414fa266608262912..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modele_workflow_valider_prix_reconduit.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le prix</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_prix_reconduit</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modeles_apply.py b/product/Coramy/skins/coramy_pdm/modeles_apply.py deleted file mode 100755 index a493031e91631d887c7e925fff9ee652b7afbc1d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modeles_apply.py +++ /dev/null @@ -1,50 +0,0 @@ -## Script (Python) "modeles_apply" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,modeles -##title= -## -request=context.REQUEST -modele_module = context.getObject() -error_modeles = [] - -for modele_item in modeles : - modele_list = modele_module.modele_sql_search_id(modele_id = modele_item) - - if len(modele_list) > 0 : - modele = modele_list[0].getObject() - - if modele <> None : - modele_categories = modele.getCategories() - new_categories = () - - for categorie_item in modele_categories : - if categorie_item[0:15] == 'modele_origine/': - new_categories += ('modele_origine/Reconduction/Cognis',) - else : - new_categories += (categorie_item,) - - modele.edit(categories = new_categories) - - else : - error_modeles.append(modele_item) - - else : - modele = None - error_modeles.append(modele_item) - - -if len(error_modeles)>0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s+modeles+mis+a+jour.+%s+modeles+non+trouves:%s.' - %(len(modeles),len(error_modeles), str(error_modeles)) - ) -else : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s+modeles+mis+a+jour.' - %len(modeles) - ) -context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/modeles_apply_form.form b/product/Coramy/skins/coramy_pdm/modeles_apply_form.form deleted file mode 100755 index ca860a51353a56a3c9901112def088009907dcc1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modeles_apply_form.form +++ /dev/null @@ -1,61 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>speed_order_input_form</name> - <pt>form_view_dialog</pt> - <action>modeles_apply</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modeles</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Liste de modèles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/modeles_print_list.py b/product/Coramy/skins/coramy_pdm/modeles_print_list.py deleted file mode 100755 index f789e281466ca10a04ba745988700b575c6cfc18..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modeles_print_list.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "modeles_print_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,modeles -##title= -## -request=context.REQUEST -modele_module = context.getObject() -error_modeles = [] - -for modele_item in modeles : - modele_list = modele_module.modele_sql_search_id(modele_id = modele_item) - - if len(modele_list) > 0 : - modele = modele_list[0].getObject() - - if modele <> None : - print str(modele.getId())+'\t'+str(modele.portal_workflow.getInfoFor(modele, 'modele_state'))+'\t'+str(modele.getModeleOrigine()) - - else : - error_modeles.append(modele_item) - - else : - modele = None - error_modeles.append(modele_item) - - -return printed + str(error_modeles) diff --git a/product/Coramy/skins/coramy_pdm/modeles_print_list_form.form b/product/Coramy/skins/coramy_pdm/modeles_print_list_form.form deleted file mode 100755 index 1489d935855f47c6d888e0c30f3fc72442a13927..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/modeles_print_list_form.form +++ /dev/null @@ -1,61 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>speed_order_input_form</name> - <pt>form_view_dialog</pt> - <action>modeles_print_list</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modeles</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Liste de modèles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/morceau_view.form b/product/Coramy/skins/coramy_pdm/morceau_view.form deleted file mode 100755 index 713c7dfaf125cbaca3d4d1d0af87ae9111639676..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/morceau_view.form +++ /dev/null @@ -1,231 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Morceau</title> - <row_length>4</row_length> - <name>morceau_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Morceau</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_quantite_simple</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Simple</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_quantite_double</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Double</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_type_tissu</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Type tissu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_type_cran</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Type cran</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_fao</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Traitement FAO</title> - </values> - <tales> - <default>here/getFao</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/operation_view.form b/product/Coramy/skins/coramy_pdm/operation_view.form deleted file mode 100755 index 4956fe6b91e9f547c98cd402cedbe3531bf3fbea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/operation_view.form +++ /dev/null @@ -1,324 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Opération</title> - <row_length>4</row_length> - <name>operation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Operation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_composition</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Composition</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>operation_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'operation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_frequence</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Frequence</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_temps</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Temps</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_machine</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Machine</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_equipement</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Equipement</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_etape</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etape</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/resource_variation_view.form b/product/Coramy/skins/coramy_pdm/resource_variation_view.form deleted file mode 100755 index 97b36c57df9f1b98ee2ff3004131a578ed752d87..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/resource_variation_view.form +++ /dev/null @@ -1,82 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Definition of Resource Variations</title> - <row_length>4</row_length> - <name>resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Discrete Variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - <items>here/portal_categories/getBaseCategoryIds</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Variation Values</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/setEan13Modele.py b/product/Coramy/skins/coramy_pdm/setEan13Modele.py deleted file mode 100755 index 398a9b0e281208142fcdaf0d5dd96e4ec94030e3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/setEan13Modele.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "setEan13Modele" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=societe -##title= -## -# retourne un code ean pour un modele -# "societe" pointe vers la categorie correspondant à la societe souhaitee (base category group) -# cette category possède des attributs CNUF, CIP et country - -request = context.REQUEST -modele = context - -country = societe.country -CNUF = societe.CNUF -CIP = societe.CIP - -modele.edit(code_ean13 = modele.new_ean13_code(country,CNUF,CIP)) -societe.edit(CIP = CIP+1) diff --git a/product/Coramy/skins/coramy_pdm/sql_id_search.zsql b/product/Coramy/skins/coramy_pdm/sql_id_search.zsql deleted file mode 100755 index 15d4ec455e852bc06083bc3ba81031871449c88a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/sql_id_search.zsql +++ /dev/null @@ -1,12 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>id -portal_type</params> -select * from catalog where id LIKE "%<dtml-var id>%" AND <dtml-sqltest portal_type type="string" op="eq"> diff --git a/product/Coramy/skins/coramy_pdm/tissu_list.form b/product/Coramy/skins/coramy_pdm/tissu_list.form deleted file mode 100755 index ed2162a9500fe0b43beebfa51256e8aa9a8674fa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de tissus</title> - <row_length>4</row_length> - <name>tissu_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'R\xe9f\xe9rence'), ('default_source_title', 'Fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('getLaizeUtile', 'Laize utile'), ('Description', 'Description'), ('getBasePrice', 'Prix Coramy'), ('getSourceBasePrice', 'Prix fournisseur'), ('composant_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'R\xe9f\xe9rence'), ('default_source_title', 'Fournisseur'), ('source_id', 'No fournisseur'), ('default_source_reference', 'R\xe9f\xe9rence Fournisseur'), ('getLaizeUtile', 'Laize utile'), ('Description', 'Description'), ('getBasePrice', 'Prix Coramy'), ('getSourceBasePrice', 'Prix fournisseur'), ('composant_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('title', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Tissu', 'Tissu')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>tissu_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Tissus</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/tissu_list_export.py b/product/Coramy/skins/coramy_pdm/tissu_list_export.py deleted file mode 100755 index 3180ddeb4244deb9d1ceee85537ac05f6583cf66..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_list_export.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "tissu_list_export" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('tissu_selection',REQUEST=context.REQUEST) -tissu_list = selection(context=context) -request = context.REQUEST -tab = '\t' -cr = '\n' - -export ="Référence"+tab+"Fournisseur"+tab+"Réf. Fournisseur"+tab+"Collection"+tab+"Description"+cr -for tissu_item in tissu_list: - tissu=tissu_item.getObject() - if tissu <> None : - ligne_tissu = '' - ligne_tissu += str(tissu.getId())+tab - ligne_tissu += str(tissu.getDefaultSourceTitle())+tab - ligne_tissu += str(tissu.getSourceReference())+tab - ligne_tissu += str(tissu.getCollection())+tab - ligne_tissu += str(tissu.getDescription())+tab - - export += ligne_tissu+cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return export diff --git a/product/Coramy/skins/coramy_pdm/tissu_list_sort_on.form b/product/Coramy/skins/coramy_pdm/tissu_list_sort_on.form deleted file mode 100755 index cd9979e805b5a237a45804a037548d624526f79c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>modele_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/tissu_list_ui.form b/product/Coramy/skins/coramy_pdm/tissu_list_ui.form deleted file mode 100755 index 21fb15a2cfa9738c0d924bffc76fe0d5d1990017..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>tissu_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/tissu_search.form b/product/Coramy/skins/coramy_pdm/tissu_search.form deleted file mode 100755 index ed97c1512455e1b776d91943f5f854dc7ad52850..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_search.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>tissu_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Tissu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/tissu_variante_view.pt b/product/Coramy/skins/coramy_pdm/tissu_variante_view.pt deleted file mode 100755 index 204d1f04589f2990afae6c7d2735de0a910dab40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_variante_view.pt +++ /dev/null @@ -1,56 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/view_master/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - -<br> - -<table border=1> - <tr align=center> - <td></td> - </tr> - <tr> - <td> - </td> - </tr> -</table> - - </div> - </div> - </body> -</html> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/tissu_view.form b/product/Coramy/skins/coramy_pdm/tissu_view.form deleted file mode 100755 index 4108eedabeb753ea86d852394387720e35663182..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/tissu_view.form +++ /dev/null @@ -1,649 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Tissu</title> - <row_length>4</row_length> - <name>tissu_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Tissu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_categorie_tissu</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type tissu</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/categorie_tissu/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_motif</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Motif</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/motif/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix fournisseur</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix Coramy</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_source_base_price_validity</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Validité du prix</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité de gestion</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_nb_couleurs</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Nombre de couleurs</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>composant_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'composant_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_eip_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Famille</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getEipList</default> - <items>here/portal_categories/eip/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_composition_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Composition</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCompositionList</default> - <items>here/portal_categories/composition/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_code_entretien_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Entretien</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/portal_categories/code_entretien/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_laize_totale</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Laize totale (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_laize_utile</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Laize utile (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Poids (g/m2)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Variante'), ('description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Variante'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''"), ('portal_type', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>variantes</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_aggregated_view.form b/product/Coramy/skins/coramy_pdm/transformation_aggregated_view.form deleted file mode 100755 index 38ec6a47b452680fc588f22691aca2fdc0f37c40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_aggregated_view.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Transformation</title> - <row_length>4</row_length> - <name>transformation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Ressource consomm\xe9e'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Ressource consomm\xe9e'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation Component', 'Transformation Component')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>transformed_resource_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Consommations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_assorted_view.form b/product/Coramy/skins/coramy_pdm/transformation_assorted_view.form deleted file mode 100755 index 43a723ab0f9662937f3cbedb9241491da82747d6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_assorted_view.form +++ /dev/null @@ -1,505 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Edit Transformation</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Transformation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Resource', 'Resource'), ('Composant', 'Resource'), ('Modele', 'Modele'), ('Tissu', 'Tissu'), ('Category', 'Category'), ('Gamme', 'Gamme'), ('Vetement', 'Vetement'), ('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Produit principal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_domain_base_category</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Axe d'état</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python: [''] + list(here.getVariationRangeBaseCategoryList())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_transformation_state</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Stade de production</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_state/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_template_transformation_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>transformation</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Transformation', 'Transformation')]</portal_type> - <required type="int">0</required> - <title>Transformations utilisées</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>transform_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'transform_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes de variantage</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Variantes possibles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Assorted Component', 'Assorted Component')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>assorted_resource_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Composants assortis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_consommation_update.py b/product/Coramy/skins/coramy_pdm/transformation_consommation_update.py deleted file mode 100755 index 6ca95a4c1b553aa56e13c997d7f2dc00804cb05e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_consommation_update.py +++ /dev/null @@ -1,47 +0,0 @@ -## Script (Python) "transformation_consommation_update" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=reference_taille, quantity, form_id -##title= -## -l_items = context.getQLineItemList() -l_items = map(lambda x: x[0], l_items) -c_items = context.getQColumnItemList() -c_items = map(lambda x: x[0], c_items) -grille = context.getDefaultValue('specialise', portal_type=('Grille Consommation',)) -request = context.REQUEST -quantity = float(quantity) - -for i in l_items: - for j in c_items: - try: - cell = grille.getCell(reference_taille[7:], j[7:], base_id='quantity') - if cell is None: - return "Erreur à signaler à TB/JPS %s %s %s:" % (grille.getUrl(), reference_taille[7:], j[7:]) - default_quantity = float(cell.quantity) - except: - default_quantity = None - if default_quantity is not None: - cell = context.newCell(i, j, base_id='quantity') - new_quantity = default_quantity * quantity - cell.edit(mapped_value_property_list = ['quantity'], - quantity = new_quantity, force_update=1) - else: - cell = context.newCell(i, j, base_id='quantity') - cell.edit(mapped_value_property_list = ['quantity'], - quantity = 99999.999) - -# Required to set Mapped Value Parameters -# This is a bit simple but it works -# Another method consists in setting by hand each cell, but that is a bit -# like repeating the same code again and again -context.fixConsistency() - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Grille+Consommation+Updated.' - ) -return request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/transformation_consommation_update_form.form b/product/Coramy/skins/coramy_pdm/transformation_consommation_update_form.form deleted file mode 100755 index 01fdb173166eb34fa8f9a1d5140add3c5a259c98..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_consommation_update_form.form +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Update</title> - <row_length>4</row_length> - <name>consommation_update_form</name> - <pt>form_view_dialog</pt> - <action>transformation_consommation_update</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_reference_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">5</size> - <title>Taille de réference</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQColumnItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getQuantity</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_correspondances_print.pt b/product/Coramy/skins/coramy_pdm/transformation_correspondances_print.pt deleted file mode 100755 index 10897cfcd4ec0c091a2ac981bb023fcefdd8672b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_correspondances_print.pt +++ /dev/null @@ -1,138 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </head> - - <body bgcolor="#ffffff" tal:define="transformation_list python:here.object_action_list(selection_name='transformation_selection',max_nb=20)"> - <TABLE tal:repeat="transformation transformation_list" width="660" height="955" cellpadding="0" cellspacing="0" class="PageA4"> -<table width="675" border="0" cellpadding="0" cellspacing="0" - tal:define="transformed_resource_list python:transformation.Transformation_getAllTransformedResource()"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Transformation : %s' %transformation.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td> - - <table class="border" border="1"> - <tr> - <th> - Composant - </th> - <th> - Description - </th> - <th> - Quantité - </th> - <th> - Unité - </th> - </tr> - <span tal:repeat="transformed_resource transformed_resource_list"> - <tr> - <td rowspan="3" valign="top"><b tal:content="python:transformed_resource.getResource()"> - The resource name - </b></td> - <td colspan="3" tal:content="python:transformed_resource.getDescription()"> - The description - </td> - </tr> - <tr> - <td tal:content="python:transformed_resource.getTransformationSubpart()"> - The transformation_subpart - </td> - <td align="right" tal:content="python: '%.2f' %(transformed_resource.getQuantity(0)/transformed_resource.getEfficiency(1))"> - The quantity - </td> - <td tal:define="unit_items python:transformed_resource.getQuantityUnit().split('/')" - tal:content="python:unit_items[len(unit_items)-1]"> - The quantity unit - </td> - </tr> - <tr> - <td colspan="3" > - <table class="border" border="0" width="100%" - tal:define="correspondances_list python:transformed_resource.TransformedComponent_getCorrespondanceList()"> - <tr tal:condition="python:len(correspondances_list)==0"> - <td> - <span tal:repeat="variation_item python:transformed_resource.getVariationCategoryList()"> - <font size="-1" tal:content="python:'- '+variation_item"/> - </span> - </td> - </tr> - <tr tal:repeat="correspondance correspondances_list"> - <td valign="top"><font size="-1" tal:content="python:correspondance[0]"> - The resource variation</font> - </td> - - <td valign="top"> - <span tal:condition="python:correspondance[1]<>''"> - <font size="-1" tal:content="python: '%.2f' %(float(correspondance[1])/transformed_resource.getEfficiency())"> - </font> - </span> - </td> - <td valign="top"><font size="-1" tal:content="python:correspondance[2]"> - The component variation</font> - </td> - </tr> - </table> - </td> - </tr> - </span> - </table> - - <br> - -</td> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_pdm/transformation_expanded_view.pt b/product/Coramy/skins/coramy_pdm/transformation_expanded_view.pt deleted file mode 100755 index 3a4f56010b4bf6cd6a8d343e4facf499af578888..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_expanded_view.pt +++ /dev/null @@ -1,182 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Jean-Paul Smets <jp@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/main_template/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - -<span tal:repeat="reference_taille python:here.getExpandedViewVariationList(request,'reference_taille_list')"> - <span tal:repeat="reference_coloris python:here.getExpandedViewVariationList(request,'reference_coloris_list')"> - <span tal:repeat="reference_morphologie python:here.getExpandedViewVariationList(request,'reference_morphologie_list')"> - Détail de la transformation <strong><span tal:replace="reference_coloris"/></strong> - - taille <strong><span tal:replace="reference_taille"/></strong> - - morphologie <strong><span tal:replace="reference_morphologie"/></strong><br><br> - <font size="-2"> - - <table border="1"> - <tr> - <th> - Transformation - </th> - <th> - Composant/Opération - </th> - <th> - Description - </th> - <th> - Quantité saisie - </th> - <th> - Unité saisie - </th> - <th> - Quantité convertie - </th> - <th> - Unité composant - </th> - <th> - Prix unitaire - </th> - <th> - Temps - </th> - <th> - Efficience - </th> - <th> - Prix total - </th> - <th> - Origine prix - </th> - <th> - Origine quantité - </th> - <th> - Origine variante - </th> - <th> - Erreurs - </th> - </tr> - <span tal:define="test_request python:here.expandedViewRequestBuilder( - reference_taille=reference_taille, - reference_coloris=reference_coloris, - reference_morphologie=reference_morphologie); - summary python:here.getAggregatedAmountList(REQUEST=test_request); - grand_total_base_price python:'%.3f' % summary[1]; - grand_total_source_base_price python:'%.3f' % summary[2]; - grand_total_duration python:'%.3f' % summary[3]; - grand_total_duration_france python:'%.3f' % summary[4]"> - <tr tal:repeat="amount python:summary[0]"> - <td tal:content="amount/transformation_id"> - The Id of this transformation - </td> - <td> - <span tal:replace="amount/resource_relative_url">The url of this resource</span> - <i tal:condition="amount/pretty_variation" tal:content="structure amount/pretty_variation"> - </i> - </td> - <td tal:content="amount/description"> - The resource name - </td> - <td tal:content="python: '%.3f' % amount['quantity']"> - The resource quantity - </td> - <td tal:content="amount/quantity_unit"> - The item unit - </td> - <td tal:content="python: '%.3f' % amount['converted_quantity']"> - The resource unit - </td> - <td tal:content="amount/resource_quantity_unit | string:"> - The resource unit - </td> - <td tal:content="python: '%.3f' % amount['unit_base_price']"> - The resource price - </td> - <td tal:content="python: '%.3f' % amount['duration']"> - The resource duration - </td> - <td tal:content="python: '%.3f' % amount['efficiency']"> - The resource efficiency - </td> - <td tal:content="python: '%.3f' % amount['total_base_price']" > - The resource total price - </td> - <td tal:content="amount/base_price_defined_by"> - The price origin - </td> - <td tal:content="amount/quantity_defined_by"> - The quantity origin - </td> - <td tal:content="amount/variation_defined_by"> - The quantity origin - </td> - <td> - <span tal:condition="amount/error_list | nothing" - tal:replace="amount/error_list" /> - </td> - </tr> - <tr> - <th colspan="8" align="right"> - Total - </th> - <th> - <span tal:replace="grand_total_duration">Total Duration</span><br> - <i><span tal:replace="grand_total_duration_france">Total Duration for France</span></i> - </th> - <th> - </th> - <th colspan="4" tal:content="grand_total_base_price" align="left"> - Total Price - </th> - - </tr> - </span> - </table> - - </font> - <br> - </span> - </span> -</span> - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/transformation_expanded_view2.pt b/product/Coramy/skins/coramy_pdm/transformation_expanded_view2.pt deleted file mode 100755 index 3a15be7929fb4227aa37469fb8f372f75fdc7448..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_expanded_view2.pt +++ /dev/null @@ -1,167 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Jean-Paul Smets <jp@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/main_template/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - -<span tal:repeat="reference_taille python:request.reference_taille_list"> - <span tal:repeat="reference_coloris python:request.reference_coloris_list"> - Détail de la transformation <strong><span tal:replace="reference_coloris"/></strong> - taille <strong><span tal:replace="reference_taille"/></strong><br><br> - <font size="-2"> - - <table border="1"> - <tr> - <th> - Transformation - </th> - <th> - Composant/Opération - </th> - <th> - Description - </th> - <th> - Quantité saisie - </th> - <th> - Unité saisie - </th> - <th> - Quantité convertie - </th> - <th> - Unité composant - </th> - <th> - Prix unitaire - </th> - <th> - Temps - </th> - <th> - Efficience - </th> - <th> - Prix total - </th> - <th> - Origine prix - </th> - <th> - Origine quantité - </th> - <th> - Origine variante - </th> - </tr> - <span tal:define="test_request python:{'categories': ('taille/%s' % reference_taille,'coloris/%s' % reference_coloris)}; - summary python:here.getAggregatedSummary(REQUEST=test_request); - grand_total_price python:'%.3f' % summary[1]; - grand_total_duration python:'%.3f' % summary[2]"> - <tr tal:repeat="res python:summary[0]"> - <td tal:content="res/transformation_id"> - The Id of this transformation - </td> - <td> - <span tal:replace="res/resource_url">The url of this resource</span> - <i tal:condition="res/pretty_variation" tal:content="structure res/pretty_variation"> - </i> - </td> - <td tal:content="res/transformed_resource_description"> - The resource name - </td> - <td tal:content="python: '%.3f' % res['quantity']"> - The resource quantity - </td> - <td tal:content="res/unit"> - The item unit - </td> - <td tal:content="python: '%.3f' % res['converted_quantity']"> - The resource unit - </td> - <td tal:content="res/resource_unit"> - The resource unit - </td> - <td tal:content="python: '%.3f' % res['price']"> - The resource price - </td> - <td tal:content="python: '%.3f' % res['duration']"> - The resource duration - </td> - <td tal:content="python: '%.3f' % res['efficiency']"> - The resource efficiency - </td> - <td tal:content="python: '%.3f' % res['total_price']" > - The resource total price - </td> - <td tal:content="res/price_defined_by"> - The price origin - </td> - <td tal:content="res/quantity_defined_by"> - The quantity origin - </td> - <td tal:content="res/variation_defined_by"> - The quantity origin - </td> - </tr> - <tr> - <th colspan="8" align="right"> - Total - </th> - <th tal:content="grand_total_duration"> - Temps total opérations - </th> - <th> - </th> - <th tal:content="grand_total_price" align="left"> - Prix total composants - </th> - <th colspan="3"> - </th> - </tr> - </span> - </table> - - </font> - <br> - </span> -</span> - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/transformation_expanded_view_form.form b/product/Coramy/skins/coramy_pdm/transformation_expanded_view_form.form deleted file mode 100755 index 63cb3200eea2c7deecb84e9cebb053dc56f3851e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_expanded_view_form.form +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Calculer la vue détaillée</title> - <row_length>4</row_length> - <name>consommation_update_form</name> - <pt>form_view_dialog</pt> - <action>transformation_expanded_view</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_reference_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('taille')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference_coloris_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('coloris')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference_morphologie_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Morphologies</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('morphologie')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_getAggregatedList.py b/product/Coramy/skins/coramy_pdm/transformation_getAggregatedList.py deleted file mode 100755 index 9e41884ab6467b009add0c946a53b6dc3a9d6971..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_getAggregatedList.py +++ /dev/null @@ -1,76 +0,0 @@ -## Script (Python) "transformation_getAggregatedList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=request=None -##title= -## -from Products.ERP5.XML.Base import Base -return "toto" - -# Example code: -transformation_list = [context] + context.getSpecialiseValueList() -if request is None: request = {'categories': ('taille/enfant/08 ans','coloris/modele/701C402/2')} -result = [] -price = 0.0 -duration = 0.0 - -for transformation in transformation_list: - for t in transformation.objectValues(): - variation_category_list = [] - quantity = t.getQuantity() - r = t.getDefaultResourceValue() - unit_price = 0.0 - item_duration = 0.0 - if r.hasDefaultBasePrice(): - unit_price = r.getBasePrice() - else: - item_duration = t.quantity - # Start filing the value holder - line_item = Base() - line_item.edit( - resource_id = r.getId(), - resource_url = r.getRelativeUrl(), - transformation_id = transformation.getId(), - transformation_url = transformation.getRelativeUrl(), - transformed_resource_id = t.getId(), - transformed_resource_description = t.getDescription(), - unit = t.getQuantityUnit(), - duration = item_duration, - quantity = quantity, - price = unit_price, - total_price = 0.0 - ) - # Add variable values - for c in t.objectValues(): - if c.test(request): - #v = self.restrictedTraverse() - #if c.hasDefaultBasePrice(): - # variation_unit_price = r.getBasePrice() - # Upgrade the request with the variation values - for a in c.getDomainDomainPropertyList(): - kw = {} - kw[a] = c.get(a) - line_item.edit(**kw) - bc_list = [] - for bc in c.getDomainBaseCategoryList(): - self.portal_categories.setCategoryMembership(line_item, bc, c.getCategoryMembershipList(bc)) - bc_list += [bc] - # Update the price - if len(bc_list) > 0: - for variation in c.getValueList(bc_list, portal_type=('Variante Tissu',)): - if variation.hasDefaultBasePrice(): - new_price = variation.getBasePrice() - if new_price > 0.0: - unit_price = new_price - # Calculate total - line_item.price = unit_price - line_item.total_price = quantity * unit_price - result += [line_item] - price += total_price - duration += item_duration - - -#return result diff --git a/product/Coramy/skins/coramy_pdm/transformation_history_view2.pt b/product/Coramy/skins/coramy_pdm/transformation_history_view2.pt deleted file mode 100755 index 78d2c8c0282c7e27c326255eb0c02e774d52178d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_history_view2.pt +++ /dev/null @@ -1,79 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/main_template/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - - -<strong>Historique</strong><br><br> - -<table border=1> - <tr align=center> - <td><b>Etat</b></td><td><b>Date - Heure</b></td><td><b>Utilisateur</b></td><td><b>Action</b></td><td><b>Commentaires</b></td> - </tr> - <span tal:repeat="history_item python:here.portal_workflow.getInfoFor(here, 'transformation_history')"> - - <tr> - <td> - <span tal:condition="history_item/transform_state | nothing" - tal:content="history_item/transform_state"/> - </td> - <td> - <span tal:condition="history_item/transformation_time | nothing" - tal:content="history_item/transformation_time"/> - </td> - <td> - <span tal:condition="history_item/transformation_actor | nothing" - tal:content="history_item/transformation_actor"/> - </td> - <td> - <span tal:condition="history_item/transformation_action | nothing" - tal:content="history_item/transformation_action"/> - </td> - <td> - <span tal:condition="history_item/transformation_comment | nothing" - tal:content="history_item/transformation_comment"/> - </td> - </tr> - - </span> -</table> - - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_pdm/transformation_identity_update.py b/product/Coramy/skins/coramy_pdm/transformation_identity_update.py deleted file mode 100755 index 94d36044eb19693d13363a77c608b4d0759c102b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_identity_update.py +++ /dev/null @@ -1,39 +0,0 @@ -## Script (Python) "transformation_identity_update" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id -##title= -## -l_items = context.getVLineItemList() -l_items = map(lambda x: x[0], l_items) -l_id = context.getVariationBaseCategoryLine() -c_items = context.getVColumnItemList() -c_items = map(lambda x: x[0], c_items) -c_id = context.getVariationBaseCategoryColumn() -t_items = context.getVTabItemList() -t_items = map(lambda x: x[0], c_items) - -request = context.REQUEST - -# We must still inlude the tab variations - -for i in l_items: - for j in c_items: - cell = context.newCell(i, j, base_id='variation') - cell.setCategoryMembership([l_id,c_id] + list(context.getVariationBaseCategoryList()) , - [i,j] + list(context.getVariationCategoryList())) - -# Required to set Mapped Value Parameters -# This is a bit simple but it works -# Another method consists in setting by hand each cell, but that is a bit -# like repeating the same code again and again -context.fixConsistency() - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Variation+Updated.' - ) -return request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/transformation_list.form b/product/Coramy/skins/coramy_pdm/transformation_list.form deleted file mode 100755 index dc6fb0ee7c87921d120c8f04693ac907ea916f93..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de transformations</title> - <row_length>4</row_length> - <name>composant_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Transformation'), ('getDefaultResourceUrl', 'Produit'), ('Description', 'Description'), ('transform_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Transformation'), ('getDefaultResourceUrl', 'Produit'), ('Description', 'Description'), ('transform_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation', 'Transformation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>transformation_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Transformations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_operation_aggregated_view.form b/product/Coramy/skins/coramy_pdm/transformation_operation_aggregated_view.form deleted file mode 100755 index 012668cf7181561d1b162495fcf0f475f521b39b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_operation_aggregated_view.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Transformation</title> - <row_length>4</row_length> - <name>transformation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Ressource consomm\xe9e'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Ressource consomm\xe9e'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation Operation', 'Transformation Operation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>transformed_resource_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Consommations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_operation_view.form b/product/Coramy/skins/coramy_pdm/transformation_operation_view.form deleted file mode 100755 index 83234e70fa8b9aa53a99ca854e7dbdffdec1f753..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_operation_view.form +++ /dev/null @@ -1,505 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Edit Transformation</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Transformation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Resource', 'Resource'), ('Composant', 'Resource'), ('Modele', 'Modele'), ('Tissu', 'Tissu'), ('Category', 'Category'), ('Gamme', 'Gamme'), ('Vetement', 'Vetement'), ('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Produit principal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_default_domain_base_category</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Axe d'état</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python: [''] + list(here.getVariationRangeBaseCategoryList())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_transformation_state</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Stade de production</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_state/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_template_transformation_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>transformation</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Transformation', 'Transformation')]</portal_type> - <required type="int">0</required> - <title>Transformations utilisées</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>transform_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'transform_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes de variantage</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Variantes possibles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Op\xe9ration'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Op\xe9ration'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation Operation', 'Transformation Operation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>transformed_resource_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Opérations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_operation_view_old.form b/product/Coramy/skins/coramy_pdm/transformation_operation_view_old.form deleted file mode 100755 index b63986529ebd2f0ba36a0ec664bf1a99cd6cd7cc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_operation_view_old.form +++ /dev/null @@ -1,476 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Edit Transformation</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Transformation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Resource', 'Resource'), ('Composant', 'Resource'), ('Modele', 'Modele'), ('Tissu', 'Tissu'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit principal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultResource | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_domain_base_category_list</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Axe d'état</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python: [''] + list(here.getVariationRangeBaseCategoryList())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_state</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Coup\xe9', 'Coup\xe9'), ('Mont\xe9', 'Mont\xe9')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Etat du produit</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_template_transformation_url_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>transformation</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Transformation', 'Transformation')]</portal_type> - <required type="int">0</required> - <title>Transformations utilisées</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes de variantage</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getBaseCategoryIds</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Variantes possibles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Op\xe9ration'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Op\xe9ration'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation Operation', 'Transformation Operation')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>transformed_resource_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Opérations</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_print.pt b/product/Coramy/skins/coramy_pdm/transformation_print.pt deleted file mode 100755 index cb7979056258201e5dbc7c879fe04e5361e1b884..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_print.pt +++ /dev/null @@ -1,127 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff"> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Transformation : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td> -<span tal:repeat="reference_taille python:here.getExpandedViewVariationList(request,'reference_taille_list')"> - <span tal:repeat="reference_coloris python:here.getExpandedViewVariationList(request,'reference_coloris_list')"> - <span tal:repeat="reference_morphologie python:here.getExpandedViewVariationList(request,'reference_morphologie_list')"> - <strong><span tal:replace="reference_coloris"/></strong> - - taille <strong><span tal:replace="reference_taille"/></strong> - - morphologie <strong><span tal:replace="reference_morphologie"/></strong><br><br> - <font size="-2"> - - <table class="border" border="1"> - <tr> - <th> - Composant - </th> - <th> - Variantes - </th> - <th> - Description - </th> - <th> - Quantité - </th> - <th> - Unité - </th> - </tr> - <span tal:define="test_request python:here.expandedViewRequestBuilder( - reference_taille=reference_taille, - reference_coloris=reference_coloris, - reference_morphologie=reference_morphologie); - summary python:here.getAggregatedAmountList(REQUEST=test_request); - grand_total_base_price python:'%.3f' % summary[1]; - grand_total_source_base_price python:'%.3f' % summary[2]; - grand_total_duration python:'%.3f' % summary[3]; - grand_total_duration_france python:'%.3f' % summary[4]"> - <tr tal:repeat="amount python:summary[0]"> - <td> - <span tal:replace="amount/resource_relative_url">The url of this resource</span> - </td> - <td> - <span tal:condition="amount/pretty_variation" tal:content="structure amount/pretty_variation"> - </span> - </td> - <td tal:content="amount/description"> - The resource name - </td> - <td tal:content="python: '%.3f' %(amount['converted_quantity']/amount['efficiency'])"> - The resource unit - </td> - <td tal:content="amount/resource_quantity_unit | string:"> - The resource unit - </td> - </tr> - - </span> - </table> - - </font> - <br> - </span> - </span> -</span> -</td> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_pdm/transformation_print_form.form b/product/Coramy/skins/coramy_pdm/transformation_print_form.form deleted file mode 100755 index 8f85d874f5340c08d4e8593565066e934540a028..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_print_form.form +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Imprimer la transformation</title> - <row_length>4</row_length> - <name>transformation_print_form</name> - <pt>form_view_dialog</pt> - <action>transformation_print</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_reference_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('taille')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference_coloris_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('coloris')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference_morphologie_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Morphologies</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getCategoryMembershipList('morphologie')</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_speed_test.py b/product/Coramy/skins/coramy_pdm/transformation_speed_test.py deleted file mode 100755 index f53d4e6807d33e0e1e2409166abd938bc62060ab..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_speed_test.py +++ /dev/null @@ -1,28 +0,0 @@ -## Script (Python) "transformation_speed_test" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Example code: -print "<html><p>Begin</p>" - -transformation_list = [context] + context.getSpecialiseValueList() -#print "%s<br>" % context.getValueList('specialise', portal_type=()) -#print "%s<br>" % context.getCategoryMembershipList('specialise', portal_type=()) -#print "%s<br>" % context.portal_categories.restrictedTraverse('transformation/70170').id -print "%s<br>" % map(lambda x: x.id, transformation_list ) - -for transformation in transformation_list: - for t in transformation.objectValues(): - r = t.getResourceDefaultValue() - print '-%s %s<br>' % (t.id, r.getBasePrice()) - for c in t.objectValues(): - print ' +%s<br>' % c.id - -print "<p>End</p></html>" - -return printed diff --git a/product/Coramy/skins/coramy_pdm/transformation_sql_search.zsql b/product/Coramy/skins/coramy_pdm/transformation_sql_search.zsql deleted file mode 100755 index 90d44e010dd961d3c056a822ea4b68bcfb341be2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_sql_search.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>modele_id</params> -SELECT DISTINCT transformation.id, transformation.relative_url, transformation.path, transformation.Description -FROM catalog AS transformation, catalog AS modele, category -WHERE transformation.uid=category.uid -AND modele.uid = category.category_uid -AND modele.id = "<dtml-var modele_id>" -AND category.base_category_uid = <dtml-var "portal_categories.resource.uid"> -AND transformation.portal_type="Transformation" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_view.form b/product/Coramy/skins/coramy_pdm/transformation_view.form deleted file mode 100755 index bbf5e83a3f90be81532c5d4d9f7980dc4f880028..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_view.form +++ /dev/null @@ -1,505 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>Edit Transformation</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Transformation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">4</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Resource', 'Resource'), ('Composant', 'Resource'), ('Modele', 'Modele'), ('Tissu', 'Tissu'), ('Category', 'Category'), ('Gamme', 'Gamme'), ('Vetement', 'Vetement'), ('Forme', 'Forme'), ('Assortiment', 'Assortiment')]</portal_type> - <required type="int">0</required> - <title>Produit principal</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_domain_base_category</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Axe d'état</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python: [''] + list(here.getVariationRangeBaseCategoryList())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_transformation_state</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Stade de production</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_state/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_template_transformation_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>transformation</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Transformation', 'Transformation')]</portal_type> - <required type="int">0</required> - <title>Transformations utilisées</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>transform_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'transform_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes de variantage</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Variantes possibles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes></global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Transformation Component', 'Transformation Component')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>transformed_resource_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Composants</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformation_workflow_valider_transformation.form b/product/Coramy/skins/coramy_pdm/transformation_workflow_valider_transformation.form deleted file mode 100755 index 514505fc3edff7b64f6e5570f24c18b66c05f088..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformation_workflow_valider_transformation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la transformation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_transformation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformed_resource_operation_view.form b/product/Coramy/skins/coramy_pdm/transformed_resource_operation_view.form deleted file mode 100755 index 587f737931f47ea2da986c415f5c947d3428b74c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformed_resource_operation_view.form +++ /dev/null @@ -1,400 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Transformation</title> - <row_length>4</row_length> - <name>transformation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Composant', 'Composant'), ('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Opération</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_transformation_subpart</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Sous-ensemble</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_subpart/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_element_composition</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Entre dans la composition</title> - </values> - <tales> - <default>here/getElementComposition</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_v_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>La variante change selon</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationBaseCategoryItemList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Variante par défaut</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_identical_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Variante identique au produit pour</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVVariationBaseCategoryList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_q_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>La quantité change selon</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationBaseCategoryItemList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_efficiency</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Efficience (%)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_specialise_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>consommation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Grille Consommation', 'Grille Consommation')]</portal_type> - <required type="int">0</required> - <title>Grille de consommations</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformed_resource_quantity_view.form b/product/Coramy/skins/coramy_pdm/transformed_resource_quantity_view.form deleted file mode 100755 index e278ef792669b621112630232abbb3d110a89352..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformed_resource_quantity_view.form +++ /dev/null @@ -1,165 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('quantity', 'Quantity'), ('id', 'id')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>quantity</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('quantity', 'Quantity')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('mapped_value_property_list', 'mapped_value_property_list')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('A', 'A'), ('B', 'B'), ('C', 'C')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getQColumnItemList</columns> - <lines>here/getQLineItemList</lines> - <tabs>here/getQTabItemList</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/quantity | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformed_resource_variation_view.form b/product/Coramy/skins/coramy_pdm/transformed_resource_variation_view.form deleted file mode 100755 index 17282c0187371532f735ba55d5cd00669d8dd1ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformed_resource_variation_view.form +++ /dev/null @@ -1,266 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('variation_category_list', 'variation_category_list'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>variation</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('variation_category_list', 'variation_category_list'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_base_category_list', 'mapped_value_base_category_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getVColumnItemList</columns> - <lines>here/getVLineItemList</lines> - <tabs>here/getVTabItemList</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>matrixbox_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>cell/getVariationCategoryList | string:Error</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:filter(lambda x: x is not None,cell_index)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/transformed_resource_view.form b/product/Coramy/skins/coramy_pdm/transformed_resource_view.form deleted file mode 100755 index 85f3aa5eba3e24a99da7a29a7d6fdc0b3b2cf1db..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/transformed_resource_view.form +++ /dev/null @@ -1,429 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Transformation</title> - <row_length>4</row_length> - <name>transformation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Composant', 'Composant'), ('Gamme', 'Gamme'), ('Assortiment', 'Assortiment')]</portal_type> - <required type="int">0</required> - <title>Composant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_transformation_subpart</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Sous-ensemble</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/transformation_subpart/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_element_composition</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Entre dans la composition</title> - </values> - <tales> - <default>here/getElementComposition</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_industrial_phase</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Phase Industrialisation</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/industrial_phase/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_v_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>La variante change selon</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationBaseCategoryItemList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Variante par défaut</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getVariationCategoryList</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_identical_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Variante identique au produit pour</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVVariationBaseCategoryList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_q_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>La quantité change selon</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getTransformationVariationBaseCategoryItemList | python:[]</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_efficiency</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Efficience (%)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_specialise_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>consommation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Grille Consommation', 'Grille Consommation')]</portal_type> - <required type="int">0</required> - <title>Grille de consommations</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variante_composant_view.form b/product/Coramy/skins/coramy_pdm/variante_composant_view.form deleted file mode 100755 index e4a581c7f440b0377077773c0f0fb667eaeefa6a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variante_composant_view.form +++ /dev/null @@ -1,348 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Variante composant</title> - <row_length>4</row_length> - <name>variante_composant_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Variante</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix fournisseur</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix Coramy</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier image</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_base_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Poids (g)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_length</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Longueur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_width</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Largeur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_height</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Hauteur (cm)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variante_gamme_view.form b/product/Coramy/skins/coramy_pdm/variante_gamme_view.form deleted file mode 100755 index bd45a293c874dec0afc9341be416de7649445c34..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variante_gamme_view.form +++ /dev/null @@ -1,127 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Variante gamme</title> - <row_length>4</row_length> - <name>variantegamme_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Variante</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_couleur_relative_url_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>couleur</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>tissu</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Variante Tissu', 'Variante Tissu')]</portal_type> - <required type="int">0</required> - <title>Coloris tissu</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getCouleurRelativeUrlList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variante_modele_view.form b/product/Coramy/skins/coramy_pdm/variante_modele_view.form deleted file mode 100755 index c65538f9e14088dfff4da0fafbc55029c97ee0c0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variante_modele_view.form +++ /dev/null @@ -1,188 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Variante modèle</title> - <row_length>4</row_length> - <name>variante_modele_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Variante</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Coloris client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_prototype</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Prototype</title> - </values> - <tales> - <default>here/getPrototype</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier image</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variante_morphologique_view.form b/product/Coramy/skins/coramy_pdm/variante_morphologique_view.form deleted file mode 100755 index 23ddc9ce397fab91c8daeac35363dc92032d5093..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variante_morphologique_view.form +++ /dev/null @@ -1,156 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Variante morphologique</title> - <row_length>4</row_length> - <name>variante_morphologique_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Variante morphologique</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_morpho_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Morphologie</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/morpho_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_vetement_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>forme</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Vetement', 'Vetement')]</portal_type> - <required type="int">0</required> - <title>Vêtements</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - <default>here/getVetementIdList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variante_tissu_view.form b/product/Coramy/skins/coramy_pdm/variante_tissu_view.form deleted file mode 100755 index 814bd7a4ae1405c192b873cbe2d0915f135f2e64..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variante_tissu_view.form +++ /dev/null @@ -1,278 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Variante tissu</title> - <row_length>4</row_length> - <name>variante_modele_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Variante</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix fournisseur</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix Coramy</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_file</id> <type>FileField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Fichier image</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_collection_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getCollectionList</default> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_referentiel_couleur_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Référentiel couleur</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getReferentielCouleurList</default> - <items>here/portal_categories/referentiel_couleur/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>image</id> <type>ImageField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <image_display>thumbnail</image_display> - <image_format>jpg</image_format> - <image_resolution type="int">75</image_resolution> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/absolute_url</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variated_property_view.form b/product/Coramy/skins/coramy_pdm/variated_property_view.form deleted file mode 100755 index 1bd0dbcc2f7bdf64c6d7965c2aad695ce022bba9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variated_property_view.form +++ /dev/null @@ -1,357 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified properties</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('variated_property', 'variated_property'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>cell</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('variated_property', 'variated_property'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>here/getColumnVariationRangeCategoryItemList</columns> - <lines>here/getLineVariationRangeCategoryItemList</lines> - <tabs>here/getTabVariationRangeCategoryItemList</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getMatrixVariationRangeBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getMappedValuePropertyList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variated_property</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>matrixbox_value</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty(here.mapped_value_property_list[0])</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variated_reference_matrix_item_list.py b/product/Coramy/skins/coramy_pdm/variated_reference_matrix_item_list.py deleted file mode 100755 index 10346d1d942d42a23f40bdf78ecfa3396402477e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variated_reference_matrix_item_list.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "variated_reference_matrix_item_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category_list=[], base=1, include=1 -##title= -## -clist = [] -variation_category_list=[] - -if include == 1 : - for category in context.getVariationBaseCategoryList(): - if category in base_category_list : - variation_category_list.append(category) -else : - for category in context.getVariationBaseCategoryList(): - if not category in base_category_list : - variation_category_list.append(category) - -for base_category in variation_category_list : - if base_category in ('coloris','morphologie','variante'): - raw_list = context.aq_parent.getVariationRangeCategoryItemList(base_category, base=0) - value_list = [] - title_list = [] - for item in raw_list : - title_list.append(item[0]) - value_list.append(base_category+'/'+item[1]) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - else : - title_list = context.aq_parent.getCategoryMembershipList(base_category, base=0) - value_list = context.aq_parent.getCategoryMembershipList(base_category, base=base) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - -if len(clist)==0 : - clist.append((None,None)) - -return clist diff --git a/product/Coramy/skins/coramy_pdm/variated_reference_view.form b/product/Coramy/skins/coramy_pdm/variated_reference_view.form deleted file mode 100755 index 31be2c4f84aa7bf0e85c2b9df0eaa55fcec89ab6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variated_reference_view.form +++ /dev/null @@ -1,355 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Référence</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_mapped_value_property_list</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getMappedValuePropertyList()[0]</default> - <items>here/portal_categories/reference_article/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.aq_parent.getVariationBaseCategoryList()</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('variated_property', 'variated_property'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>cell</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('variated_property', 'variated_property'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.variated_reference_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.variated_reference_matrix_item_list(base_category_list = ('coloris',), base=1)</lines> - <tabs>python:here.variated_reference_matrix_item_list(base_category_list = ('taille','coloris',), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getMappedValuePropertyList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:filter(lambda x: x is not None,cell_index)</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variated_property</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>matrixbox_value</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty(here.mapped_value_property_list[0])</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/variated_references_set_gencod_coramy.py b/product/Coramy/skins/coramy_pdm/variated_references_set_gencod_coramy.py deleted file mode 100755 index 1ca75450232dd06c8a85a0250dc275486d4ebf91..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/variated_references_set_gencod_coramy.py +++ /dev/null @@ -1,67 +0,0 @@ -## Script (Python) "variated_references_set_gencod_coramy" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST - -# mise à jour du range de la matrice - -line = map((lambda x:x[0]),context.variated_reference_matrix_item_list(base_category_list = ('coloris','variante'), base=1)) -column = map((lambda x:x[0]),context.variated_reference_matrix_item_list(base_category_list = ('taille',), base=1)) -tab = map((lambda x:x[0]),context.variated_reference_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)) - -if line <> [None] : - if column <> [None] : - if tab <> [None] : - context.setCellRange(line,column,tab,base_id="cell") - else : - context.setCellRange(line,column,base_id="cell") - else : - if tab <> [None] : - context.setCellRange(line,tab,base_id="cell") - else : - context.setCellRange(line,base_id="cell") -elif column <> [None] : - if tab <> [None] : - context.setCellRange(column,tab,base_id="cell") - else : - context.setCellRange(column,base_id="cell") -elif tab <> [None] : - context.setCellRange(tab,base_id="cell") - -# boucle sur les cellules de matrice pour les remplir -cell_keys = context.getCellKeys(base_id="cell") -for keys_item in cell_keys : - cancel = 0 - if len(keys_item) == 3 : - cell = context.newCell(keys_item[0],keys_item[1],keys_item[2], base_id='cell') - elif len(keys_item) == 2 : - cell = context.newCell(keys_item[0],keys_item[1], base_id='cell') - elif len(keys_item) == 1 : - cell = context.newCell(keys_item[0], base_id='cell') - else : - cancel = 1 - - if cancel == 0: - cell.edit(mapped_value_property_list = 'code_ean13', - domain_base_category_list = context.getVariationBaseCategoryList(), - predicate_operator = 'SUPERSET_OF', - predicate_value_list = keys_item) - societe = context.portal_categories.group.Coramy - country = societe.country - CNUF = societe.CNUF - CIP = societe.CIP - cell.edit(code_ean13 = context.new_ean13_code(country,CNUF,CIP)) - societe.edit(CIP = CIP+1) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Gencods+mis+a+jour.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/verif_modele.py b/product/Coramy/skins/coramy_pdm/verif_modele.py deleted file mode 100755 index 62cdf77e6e345f43b44aee48787092d570793bc1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/verif_modele.py +++ /dev/null @@ -1,50 +0,0 @@ -## Script (Python) "verif_modele" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# in the case where there's nothing to print -print " " - -for o in context.objectValues("CORAMY Modele"): - print o.id - nb_forme = 0 - for forme in o.getCategoryMembershipList(('eid','specialise'),portal_type='Forme'): - nb_forme+=1 - forme_path = '/coramy/' + forme - ob_search = context.restrictedTraverse(path=forme_path,default=None) - if ob_search is None: - print " cette forme n'existe pas: " + forme - else: - ob_search_list = context.portal_catalog.searchResults(path=forme_path) - if len(ob_search_list) == 0: - print " cette forme existe mais n'est pas dans le catalog: " + forme - - if nb_forme == 2: - print " Il y a deux Formes pour : " + o.id - if nb_forme == 0: - print " Il n'y a pas de Formes pour : " + o.id - - nb_vetement = 0 - for vetement in o.getCategoryMembershipList(('eid','specialise'),portal_type='Vetement'): - nb_vetement+=1 - vetement_path = '/coramy/' + vetement - ob_search = context.restrictedTraverse(path=vetement_path,default=None) - if ob_search is None: - print " ce vetement n'existe pas: " + vetement - else: - ob_search_list = context.portal_catalog.searchResults(path=vetement_path) - if len(ob_search_list) == 0: - print " ce vetement existe mais n'est pas dans le catalog: " + vetement - if nb_vetement == 2: - print " Il y a deux Vetements pour : " + o.id - - if nb_vetement == 0: - print " Il n'y a pas de Vetements pour : " + o.id - - -return printed diff --git a/product/Coramy/skins/coramy_pdm/vetement_bareme_mesures_view.form b/product/Coramy/skins/coramy_pdm/vetement_bareme_mesures_view.form deleted file mode 100755 index 3d7f87a4025a90bb97327588ade27b7576b5d901..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_bareme_mesures_view.form +++ /dev/null @@ -1,290 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Vetement</title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Vêtement</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('mesure_coramy', 'mesure_coramy'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>mesure_coramy</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('mesure_coramy', 'mesure_coramy'), ('predicate_value', 'predicate_value')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">0</update_cell_range> - </values> - <tales> - <columns>here/getTailleItemList</columns> - <lines>here/getMesureVetementItemList</lines> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:here.portal_categories.mesure_vetement.id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['mesure_coramy']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>matrixbox_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>cell/getVariationCategoryList | string:Error</default> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>matrixbox_mesure_coramy</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Mesure Coramy</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>cell/mesure_coramy | string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_list.form b/product/Coramy/skins/coramy_pdm/vetement_list.form deleted file mode 100755 index 2ce70fad543cbf49f0cf034c2deda9bf9cf92e41..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_list.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de vêtements</title> - <row_length>4</row_length> - <name>vetement_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'V\xeatement'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'V\xeatement'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">50</lines> - <list_action>list</list_action> - <list_cookie>SEARCH_LIST</list_cookie> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Vetement', 'Vetement')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>vetement_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Vêtements</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_mesures_auto_selection.py b/product/Coramy/skins/coramy_pdm/vetement_mesures_auto_selection.py deleted file mode 100755 index 6229e10b2a88c1eabd2c4ed688758d6f12951ea4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_mesures_auto_selection.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "vetement_mesures_auto_selection" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -vetement = context -correspondance = vetement.getDefaultValue('specialise',portal_type=['Correspondance Mesures']) - -if correspondance <> None : - mesures_list = correspondance.getMesureVetementList() - vetement.edit(mesure_vetement = mesures_list) - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Mesures+selectionnees.' - ) - -else : - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Pas+de+correspondance+définie.' - ) - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_pdm/vetement_mise_au_point_view.form b/product/Coramy/skins/coramy_pdm/vetement_mise_au_point_view.form deleted file mode 100755 index fe594537e76e626e9fe0e62ebf8a506145d1fe8c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_mise_au_point_view.form +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Vêtement</title> - <row_length>4</row_length> - <name>vetement_mise_au_point_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_nomenclature</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Nomenclature</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_mode_operatoire</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Mode opératoire</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_related_modele_view.form b/product/Coramy/skins/coramy_pdm/vetement_related_modele_view.form deleted file mode 100755 index 79b5d4d89afdfc9fa805e93fa03ea45358b3eca8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_related_modele_view.form +++ /dev/null @@ -1,309 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Vetement</title> - <name>vetement_view</name> - <action>base_edit</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Vêtement</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_librairie</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Fichier Lectra</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>forme</default_module> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Formes concernées</title> - <update_method>base_update_relation</update_method> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_base_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille de base</title> - </values> - <tales> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_correspondance_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_mesures</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Mesures', 'Correspondance Mesures')]</portal_type> - <required type="int">0</required> - <title>Correspondance mesures</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>vetement_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'vetement_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">6</size> - <title>Plage de tailles</title> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_mesure_vetement_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">7</size> - <title>Mesures Coramy</title> - </values> - <tales> - <default>here/getMesureVetementList</default> - <items>here/portal_categories/mesure_vetement/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('relative_url', 'Document'), ('portal_type', 'Type'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">Vetement_zGetRelatedModeleList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Modele', 'Modele'), ('Variante Morphologique', 'Variante Morphologique')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>related_modele_selection</selection_name> - <sort type="list">[]</sort> - <stat_method></stat_method> - <title>Modèles concernés</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_search_list.form b/product/Coramy/skins/coramy_pdm/vetement_search_list.form deleted file mode 100755 index 276e390beddcbae96c9c76fd40f275cfd371df2f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_search_list.form +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de vêtements</title> - <row_length>4</row_length> - <name>vetement_search_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>search_list</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'V\xeatement'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description'), ('vetement_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'V\xeatement'), ('relative_url', "Chemin d'acc\xe8s"), ('Description', 'Description'), ('vetement_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <global_attributes type="list">[]</global_attributes> - <height type="int">5</height> - <hidden type="int">0</hidden> - <lines type="int">50</lines> - <list_action>list</list_action> - <list_cookie>SEARCH_LIST</list_cookie> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Vetement', 'Vetement')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <reverse type="int">0</reverse> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name></selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Vêtements</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_view.form b/product/Coramy/skins/coramy_pdm/vetement_view.form deleted file mode 100755 index 4ad1fc917c620ac83f316321ac6903dde61365b5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_view.form +++ /dev/null @@ -1,408 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Vetement</title> - <row_length>4</row_length> - <name>vetement_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Vêtement</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_librairie</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Fichier Lectra</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_forme_id_list</id> <type>MultiRelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default type="list">[]</default> - <default_module>forme</default_module> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <portal_type type="list">[('Forme', 'Forme')]</portal_type> - <required type="int">0</required> - <title>Formes concernées</title> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_base_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille de base</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_correspondance_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>correspondance_mesures</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Correspondance Mesures', 'Correspondance Mesures')]</portal_type> - <required type="int">0</required> - <title>Correspondance mesures</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>vetement_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'vetement_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">6</size> - <title>Plage de tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getTailleList</default> - <items>here/portal_categories/taille/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_mesure_vetement_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">7</size> - <title>Mesures Coramy</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <default>here/getMesureVetementList</default> - <items>here/portal_categories/mesure_vetement/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_present_au_catalogue</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Présent au catalogue</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Dessin'), ('description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Dessin'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Dessin Technique', 'Dessin Technique')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>folder_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Dessins techniques</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_annuler_etude.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_annuler_etude.form deleted file mode 100755 index 40cfa21094ec955d10efb668c4e8f8362ecc68eb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_annuler_etude.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Annuler l'etude</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>annuler_etude</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_etudier_gradation.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_etudier_gradation.form deleted file mode 100755 index ee025c6a79c95a93fe06c036b610d72151b74698..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_etudier_gradation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Etudier la gradation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>etudier_gradation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_gamme_taille.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_gamme_taille.form deleted file mode 100755 index ae3022249662b323e4ec4a67e738301b174bf840..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_gamme_taille.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Lancer la gamme taille</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>lancer_gamme_taille</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_prototype.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_prototype.form deleted file mode 100755 index 1daa612fab52cd4039f177a7886834c410b67485..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_lancer_prototype.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Lancer le prototype</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>lancer_prototype</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_dossier_technique.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_dossier_technique.form deleted file mode 100755 index bb875756e664f91d08a36e7b77482f34d9402376..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_dossier_technique.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier le dossier technique</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_dossier_technique</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_gradation.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_gradation.form deleted file mode 100755 index 6234f38bfef27a14e682f0f86367b5b3c683b5bc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_gradation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier la gradation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_gradation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_vetement.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_vetement.form deleted file mode 100755 index b4d3fac8473fb0ea85d49623580ce13a5df8f6b0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_rectifier_vetement.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier le vetement</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_vetement</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_dossier_technique.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_dossier_technique.form deleted file mode 100755 index ee9f80d160854ad33c804b3c10f6dcaa0d1fc281..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_dossier_technique.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le dossier technique</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_dossier_technique</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_gamme_taille.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_gamme_taille.form deleted file mode 100755 index a11f03f0676752730d9adcb0df717b7f6ccda967..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_gamme_taille.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la gamme taille</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_gamme_taille</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_prototype.form b/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_prototype.form deleted file mode 100755 index ef46bbe123826979810b856aa8c5e93e86b01a40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/vetement_workflow_valider_prototype.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le prototype</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_prototype</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_pdm/zGetTissuSupplierList.zsql b/product/Coramy/skins/coramy_pdm/zGetTissuSupplierList.zsql deleted file mode 100755 index e6c0a681b7e9d0eabaace1b8c227782258ce14f6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_pdm/zGetTissuSupplierList.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:10000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT catalog.relative_url, catalog.title, catalog.path, catalog.id -FROM catalog, catalog as resource, category -WHERE catalog.portal_type = "Organisation" -AND resource.portal_type = "Tissu" -AND category.uid = resource.uid -AND category.base_category_uid = <dtml-var "portal_categories.source.uid"> -AND category.category_uid = catalog.uid \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/ContainerLine_zGetTotal.zsql b/product/Coramy/skins/coramy_trade/ContainerLine_zGetTotal.zsql deleted file mode 100755 index 21fe2d139cfcae0c0f905a67d7a6002c8e65738b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/ContainerLine_zGetTotal.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -SELECT - SUM(quantity) AS total_quantity, - SUM(total_price) AS total_price, - SUM(target_quantity) AS target_total_quantity, - SUM(target_total_price) AS target_total_price, - AVG(price) AS average_price -FROM catalog, movement -WHERE - catalog.parent_uid = <dtml-sqlvar uid type="int"> -AND - catalog.uid = movement.uid diff --git a/product/Coramy/skins/coramy_trade/Container_fastInput.py b/product/Coramy/skins/coramy_trade/Container_fastInput.py deleted file mode 100755 index 22cfc1d965ef06563e0b972cbf8d3e1bdac6ca19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_fastInput.py +++ /dev/null @@ -1,112 +0,0 @@ -## Script (Python) "Container_fastInput" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='',selection_index=None,selection_name='',dialog_category='object_exchange',quantity=0,container_type='',gross_weight=0,listbox=None,cancel_url='',next_container_int_index=1 -##title= -## -# first we build a dict of desired container lines -# key of dict : id of resource -# item of dict : tuples (resource_value, variation_category_list, quantity) -delivery = context -next_container_number = next_container_int_index - -desired_lines = {} -for relative_url, listitem in listbox.items() : - container_quantity = listitem['container_quantity'] - if container_quantity : - listitem_value = context.restrictedTraverse(relative_url) - if listitem_value is not None : - my_resource = listitem_value.getResourceValue() - if my_resource is not None : - if my_resource.getRelativeUrl() in desired_lines.keys() : - desired_lines[my_resource.getRelativeUrl()].append((listitem_value.getVariationCategoryList(), container_quantity)) - else : - desired_lines[my_resource.getRelativeUrl()] = [(listitem_value.getVariationCategoryList(), container_quantity)] - -# we build 'quantity' containers -for colis_nb in range(quantity) : - - new_container_id = 'c'+str(next_container_number) - # we use container_type to know which are the resource (and variation) of the container - container_type_item_list = container_type.split('/') - container_resource_url = '/'.join(container_type_item_list[0:2]) - cointainer_resource_variation = 'variante/'+container_type - context.portal_types.constructContent(type_name = 'Container', - container = delivery, - int_index = next_container_number, - serial_number = "%06d%04d" % (int(delivery.getId()),next_container_number), - resource = container_resource_url, - variation_base_category_list = ['variante'], - variation_category_list = [cointainer_resource_variation], - gross_weight = gross_weight, - id = new_container_id, - ) - next_container_number += 1 - container = delivery[new_container_id] - container.flushActivity(invoke=1) - - # print container label - container.Container_printLabel() - - # now build container_lines - for key in desired_lines.keys() : - new_container_line_id = str(container.generateNewId()) - - # compute variation_base_category_list and variation_category_list for this line - line_variation_base_category_dict = {} - line_variation_category_list = [] - - for my_tuple in desired_lines[key] : - - for variation_item in my_tuple[0] : - if not variation_item in line_variation_category_list : - line_variation_category_list.append(variation_item) - variation_base_category_items = variation_item.split('/') - if len(variation_base_category_items) > 0 : - line_variation_base_category_dict[variation_base_category_items[0]] = 1 - - line_variation_base_category_list = line_variation_base_category_dict.keys() - - # construct new content (container_line) - my_resource_url = key - context.portal_types.constructContent(type_name = 'Container Line', - container = container, - id = new_container_line_id, - resource = my_resource_url, - variation_base_category_list = line_variation_base_category_list, - variation_category_list = line_variation_category_list - ) - container_line = container[new_container_line_id] - - # set target_quantities in container_lines - container_cell_list = container_line.contentValues() - for my_tuple in desired_lines[key] : - quantity_updated = 0 - for container_cell in container_cell_list : - if container_cell.test(context.asContext(categories=my_tuple[0])) : - container_cell.setTargetQuantity(my_tuple[1]) - container_cell.flushActivity(invoke=1) - quantity_updated = 1 - break - # if no cell according to variation_category_list was found - # or no variation at all, we update the container_line - if not quantity_updated : - container_line.setTargetQuantity(my_tuple[1]) - container_line.flushActivity(invoke=1) - - # update target_quantities on delivery_lines or cells - container.edit() - -redirect_url = '%s/%s?selection_name=%s&dialog_category=%s&form_id=%s&cancel_url=%s&%s' % ( context.absolute_url() - , 'Container_fastInputForm' - , selection_name - , dialog_category - , form_id - , cancel_url - , 'portal_status_message=%s+colis+créé(s)' % quantity - ) - -context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/Container_fastInputForm.form b/product/Coramy/skins/coramy_trade/Container_fastInputForm.form deleted file mode 100755 index 6b6d63915314ffaf8f17cf2bd9ac3e4a27fd0903..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_fastInputForm.form +++ /dev/null @@ -1,222 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>Container_fastInputForm</name> - <pt>form_dialog</pt> - <action>Container_fastInput</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_container_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('carton A', 'composant/CAame/A'), ('carton B', 'composant/CAame/B'), ('carton C', 'composant/CAame/C'), ('carton D1', 'composant/CAame/D1'), ('carton D2', 'composant/CAame/D2'), ('carton D3', 'composant/CAame/D3')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Type de colis</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_gross_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>0.0</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Poids brut (kg)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_next_container_int_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Prochain numéro</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:len(here.contentValues(filter={'portal_type':'Container'}))+1</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Nombre de colis</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('Amount_getTailleClient', 'Taille client'), ('quantity', 'Quantit\xe9e demand\xe9e'), ('DeliveryCell_getContainedTargetQuantity', 'Quantit\xe9e colis\xe9e'), ('container_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('container_quantity', 'container_quantity')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetNeededCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contenu du colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_container_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>string:</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Container_oneClicInput.py b/product/Coramy/skins/coramy_trade/Container_oneClicInput.py deleted file mode 100755 index 3e2f11cb788b765a66fc2122f2424b97a38e28e0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_oneClicInput.py +++ /dev/null @@ -1,121 +0,0 @@ -## Script (Python) "Container_oneClicInput" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='',selection_index=None,selection_name='',dialog_category='object_exchange',container_type='',gross_weight=0,listbox=None,cancel_url='',next_container_int_index=1 -##title= -## -# first we build a dict of desired container lines -# key of dict : id of resource -# item of dict : tuples (resource_value, variation_category_list, quantity) -delivery = context -next_container_number = next_container_int_index - -#desired_lines = {} -desired_containers = {} -for relative_url, listitem in listbox.items() : - container_index = listitem['container_index'] - if not container_index in desired_containers.keys() : - desired_containers[container_index] = {} - other_quantity = listitem['container_quantity'] - listitem_value = context.restrictedTraverse(relative_url) - if listitem_value is not None : - if other_quantity : - container_quantity = other_quantity - else : - container_quantity = listitem_value.getQuantity() - my_resource = listitem_value.getResourceValue() - if my_resource is not None : - if my_resource.getRelativeUrl() in desired_containers[container_index].keys() : - desired_containers[container_index][my_resource.getRelativeUrl()].append((listitem_value.getVariationCategoryList(), container_quantity)) - else : - desired_containers[container_index][my_resource.getRelativeUrl()] = [(listitem_value.getVariationCategoryList(), container_quantity)] - -# we build as many containers as needed -container_key_list = desired_containers.keys() -container_key_list.sort() -for key in container_key_list : - desired_lines = desired_containers[key] - new_container_id = 'c'+str(next_container_number) - # we use container_type to know which are the resource (and variation) of the container - container_type_item_list = container_type.split('/') - container_resource_url = '/'.join(container_type_item_list[0:2]) - cointainer_resource_variation = 'variante/'+container_type - context.portal_types.constructContent(type_name = 'Container', - container = delivery, - int_index = next_container_number, - serial_number = "%06d%04d" % (int(delivery.getId()),next_container_number), - resource = container_resource_url, - variation_base_category_list = ['variante'], - variation_category_list = [cointainer_resource_variation], - gross_weight = gross_weight, - id = new_container_id, - ) - next_container_number += 1 - container = delivery[new_container_id] - container.flushActivity(invoke=1) - - # print container label - container.Container_printLabel() - - # now build container_lines - for key in desired_lines.keys() : - new_container_line_id = str(container.generateNewId()) - - # compute variation_base_category_list and variation_category_list for this line - line_variation_base_category_dict = {} - line_variation_category_list = [] - - for my_tuple in desired_lines[key] : - - for variation_item in my_tuple[0] : - if not variation_item in line_variation_category_list : - line_variation_category_list.append(variation_item) - variation_base_category_items = variation_item.split('/') - if len(variation_base_category_items) > 0 : - line_variation_base_category_dict[variation_base_category_items[0]] = 1 - - line_variation_base_category_list = line_variation_base_category_dict.keys() - - # construct new content (container_line) - my_resource_url = key - context.portal_types.constructContent(type_name = 'Container Line', - container = container, - id = new_container_line_id, - resource = my_resource_url, - variation_base_category_list = line_variation_base_category_list, - variation_category_list = line_variation_category_list - ) - container_line = container[new_container_line_id] - - # set target_quantities in container_lines - container_cell_list = container_line.contentValues() - for my_tuple in desired_lines[key] : - quantity_updated = 0 - for container_cell in container_cell_list : - if container_cell.test(context.asContext(categories=my_tuple[0])) : - container_cell.setTargetQuantity(my_tuple[1]) - container_cell.flushActivity(invoke=1) - quantity_updated = 1 - break - # if no cell according to variation_category_list was found - # or no variation at all, we update the container_line - if not quantity_updated : - container_line.setTargetQuantity(my_tuple[1]) - container_line.flushActivity(invoke=1) - - # update target_quantities on delivery_lines or cells - container.edit() - -redirect_url = '%s/%s?selection_name=%s&dialog_category=%s&form_id=%s&cancel_url=%s&%s' % ( context.absolute_url() - , 'Container_fastInputForm' - , selection_name - , dialog_category - , form_id - , cancel_url - , 'portal_status_message=%s+colis+créé(s)' % len(container_key_list) - ) - -context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/Container_oneClicInputForm.form b/product/Coramy/skins/coramy_trade/Container_oneClicInputForm.form deleted file mode 100755 index 56267f1590ad2945d8d2240f246174b587b036f4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_oneClicInputForm.form +++ /dev/null @@ -1,218 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie immédiate</title> - <row_length>4</row_length> - <name>Container_oneClicInputForm</name> - <pt>form_dialog</pt> - <action>Container_oneClicInput</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_container_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('carton A', 'composant/CAame/A'), ('carton B', 'composant/CAame/B'), ('carton C', 'composant/CAame/C'), ('carton D1', 'composant/CAame/D1'), ('carton D2', 'composant/CAame/D2'), ('carton D3', 'composant/CAame/D3')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Type de colis</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_gross_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>0.0</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Poids brut (kg)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_next_container_int_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Prochain numéro</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:len(here.contentValues(filter={'portal_type':'Container'}))+1</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('Amount_getTailleClient', 'Taille client'), ('quantity', 'Quantit\xe9e demand\xe9e'), ('DeliveryCell_getContainedTargetQuantity', 'Quantit\xe9e colis\xe9e'), ('container_quantity', 'Autre quantit\xe9'), ('container_index', 'Ordre colis'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('container_quantity', 'container_quantity'), ('container_index', 'container_index')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetNeededCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contenu du colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_container_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Autre quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_container_index</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Ordre colis</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Container_printExtandLabel.py b/product/Coramy/skins/coramy_trade/Container_printExtandLabel.py deleted file mode 100755 index 250440e0120b69e378cb05773d3ca9754cb93ab5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_printExtandLabel.py +++ /dev/null @@ -1,174 +0,0 @@ -## Script (Python) "Container_printExtandLabel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=printer_name='' -##title= -## -from Products.Coramy.MetoAPI import selectMeter, startFormat, setDecoration, setPrintSpeed, setPaperSpeed, setPixel, setTemparature, setNumber, endFormat, printText, printLine, printFrame, setAsdFont - - -def chaine(num, div): - case = { - 10 : 1, - 100 : 2, - 1000: 3, - 10000: 4, - 100000: 5, - 1000000: 6 - - } - longueur = case[div] - #longueur = div / 10 - tmp = str( int(num) % div) - - result = '' - for i in range(0,longueur): - result += '0' - - result = result[:-len(tmp)] + tmp - return result - - - -raw_string = '' -container = context - -""" -# selecting printer (user dependent) -local_user = container.portal_membership.getAuthenticatedMember().getUserName() -if local_user == 'Nicole_Denis' : - printer_name = 'Meto_XS40_2' -elif local_user == 'Christelle_Megret' : - printer_name = 'Meto_XS40_3' -elif local_user == 'Jocelyne_Olejarz' : - printer_name = 'Meto_XS40_4' -elif local_user == 'Nathalie_Wadoux' : - printer_name = 'Meto_XS40_5' -elif local_user == 'Joelle_Gorriez': - printer_name = 'Meto_XS40_6' -elif local_user == 'Chantal_Hannequin' : - printer_name = 'Meto_XS40_5' -elif local_user == 'Gaelle_Manier' : - printer_name = 'Meto_XS40_6' - -else : - printer_name = 'Meto_XS40_2' -""" -delivery = container.aq_parent - -# Destination -client_title = delivery.getDestinationValue(portal_type=['Organisation']).getTitle() -client_address_items = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().asText(country='France').split('\n') -client_address_1 = client_address_items[0] -if len(client_address_items) > 2 : - client_address_2 = client_address_items[1] -else : - client_address_2 = '' -client_city = client_address_items[len(client_address_items)-1] -client_zip_code = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().getZipCode() - -# Expediteur -source_section = delivery.getSourceSectionTitle() -list = delivery.portal_catalog(Title=source_section, portal_type = 'Organisation') -if len(list) > 0: - expe = list[0].getObject() - - expe_title = expe.getTitle() - expe_address_items = expe.getDefaultAddress().asText(country='France').split('\n') - expe_address = expe_address_items[0] - expe_city = expe_address_items[len(expe_address_items)-1] - - -# Printing protocol starts here -# first set some parameters -raw_string += selectMeter() -raw_string += setAsdFont() -#raw_string += setDecoration(1) -raw_string += startFormat() -raw_string += setPrintSpeed() -raw_string += setPaperSpeed() -raw_string += setTemparature() - - -# then design the label -# adress -raw_string += printFrame(1, 29, 41, 35, 99, 5, 5, 10) -# ref colis -raw_string += printFrame(1, 29, 8, 35, 33, 5, 5, 10) -# code produit extand -raw_string += printFrame(1, 3, 94, 26, 46, 5, 5, 10) -raw_string += printLine(1, 3, 64, 15, 30, 10) -# dpt -raw_string += printFrame(1, 18, 64, 11, 30, 5, 5, 10) -# expediteur -raw_string += printFrame(1, 3, 8, 26, 56, 5, 5, 10) - - -# calcul modulo -#recepisse = str(int(atof(delivery.getId())) % 1000000) + str( container.getIntIndex() % 100 ) -recepisse = chaine( delivery.getId() , 1000000) + chaine( container.getIntIndex() , 100 ) - - -case_society = { - 'BLS':'5433', - 'Houvenaegel':'1194', - 'Coramy':'0193' -} -code_client = case_society[ source_section ] - -code = '12119591'+code_client+'4012'+recepisse + chaine( container.getGrossWeight() * 10 , 1000 ) + '00' + client_zip_code[:2] -totpair = int(code[0]) -totimpair = 0 - -for i in range(15): - totimpair += int(code[(2*i)+1]) - totpair += int(code[(2*i)+2]) - -cal1 = str((totpair * 3) + totimpair) -digit = str ( 10 - int( cal1[ len(cal1) - 1 ] ) ) - -if digit == '10': - digit = '0' - -code_barre = code+digit - - - -# code barre -raw_string += printText(2, "d", 0, 0, 300, 70, 139, code_barre, 10) -raw_string += printText(2, "9", 0, 0, 300, 65, 111, code_barre, 10) - - -# expediteur -raw_string += printText(2, "9", 0, 0, 2, 22, 62, "Expediteur", 10) -raw_string += printText(2, "9", 0, 0, 2, 15, 62, expe_title , 10) -raw_string += printText(2, "9", 0, 0, 1, 10, 62, expe_address , 10) -raw_string += printText(2, "9", 0, 0, 1, 4, 62, expe_city , 10) - -# destinataire -raw_string += printText(2, "9", 0, 0, 2, 56, 139, client_title , 10) -raw_string += printText(2, "9", 0, 0, 2, 46, 139, client_address_1 , 10) -raw_string += printText(2, "9", 0, 0, 2, 41, 139, client_address_2 , 10) -raw_string += printText(2, "9", 0, 0, 3, 31, 139, client_city , 10) - -# colis -raw_string += printText(2, "9", 0, 0, 1, 58, 38, "Cde "+ delivery.getId() , 10) -raw_string += printText(2, "9", 0, 0, 1, 41, 38, "Poids "+ str( container.getGrossWeight()) + " Kg", 10) -raw_string += printText(2, "9", 0, 0, 1, 49, 38, "Colis "+ str(container.getIntIndex()), 10) -raw_string += printText(2, "9", 0, 0, 1, 32, 38, "Ref. "+ recepisse, 10) -raw_string += printText(2, "9", 0, 0, 4, 18, 134, "EXTAND", 10) -raw_string += printText(2, "9", 0, 0, 6, 3, 130, "B12", 10) -raw_string += printText(2, "9", 0, 0, 5, 17, 86, client_zip_code[:2] , 10) - -raw_string += printText(2, "9", 0, 0, 6, 2, 87, context.PlanTransportExtand(client_zip_code[:2])[1] , 10) - -# set the quentity to print -raw_string += setNumber() -raw_string += endFormat() - -# send data to printer -#return chaine(94.2,10000) -context.sendRawToCups(printer_name, raw_string) diff --git a/product/Coramy/skins/coramy_trade/Container_printLabel.py b/product/Coramy/skins/coramy_trade/Container_printLabel.py deleted file mode 100755 index 6abc2090d1254086d33414dd9617d5a6aa305a92..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_printLabel.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "Container_printLabel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name=None -##title= -## -# get the name of the printer -printer_name = context.Coramy_userLabelPrinterDefinition(user_name=user_name) - -# print container label -container = context - -if container.aq_parent.getDeliveryMode() == 'Transporteur/Extand' : - container.Container_printExtandLabel(printer_name=printer_name) -else : - container.Container_printMetoLabel(printer_name=printer_name) diff --git a/product/Coramy/skins/coramy_trade/Container_printMetoLabel.py b/product/Coramy/skins/coramy_trade/Container_printMetoLabel.py deleted file mode 100755 index bb5d9f5db3cf76f8eeb9a312fa8bfcd9f4edcc41..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_printMetoLabel.py +++ /dev/null @@ -1,85 +0,0 @@ -## Script (Python) "Container_printMetoLabel" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=printer_name='' -##title= -## -from Products.Coramy.MetoAPI import selectMeter, startFormat, setDecoration, setPrintSpeed, setPaperSpeed, setPixel, setTemparature, setNumber, endFormat, printText, printLine, printFrame, setAsdFont - -raw_string = '' -container = context -""" -# selecting printer (user dependent) -local_user = container.portal_membership.getAuthenticatedMember().getUserName() -if local_user == 'Nicole_Denis' : - printer_name = 'Meto_XS40_2' -elif local_user == 'Christelle_Megret' : - printer_name = 'Meto_XS40_3' -elif local_user == 'Jocelyne_Olejarz' : - printer_name = 'Meto_XS40_4' -elif local_user == 'Nathalie_Wadoux' : - printer_name = 'Meto_XS40_5' -elif local_user == 'Joelle_Gorriez': - printer_name = 'Meto_XS40_6' -elif local_user == 'Chantal_Hannequin' : - printer_name = 'Meto_XS40_5' -elif local_user == 'Gaelle_Manier' : - printer_name = 'Meto_XS40_6' -else : - printer_name = 'Meto_XS40_2' -""" -delivery = container.aq_parent -client_title = delivery.getDestinationValue(portal_type=['Organisation']).getTitle() -client_address_items = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().asText(country='France').split('\n') -client_address_1 = client_address_items[0] -if len(client_address_items) > 2 : - client_address_2 = client_address_items[1] -else : - client_address_2 = '' -client_city = client_address_items[len(client_address_items)-1] - -# Printing protocol starts here -# first set some parameters -raw_string += selectMeter() -raw_string += setAsdFont() -#raw_string += setDecoration(1) -raw_string += startFormat() -raw_string += setPrintSpeed() -raw_string += setPaperSpeed() -raw_string += setTemparature() - -# then design the label -raw_string += printLine(1, 3, 138, 100, 10, 10) -raw_string += printText(1, "9", 0, 0, 2, 8, 139, 'Expediteur', 10) -raw_string += printText(1, "9", 0, 0, 3, 52, 138, 'Destinataire', 10) -raw_string += printFrame(1, 3, 3, 100, 145, 2, 2, 10) -raw_string += printLine(1, 41, 3, 0.5, 145, 10) -raw_string += printLine(1, 11, 3, 0.2, 135, 10) - -raw_string += printText(2, "9", 0, 0, 2, 31, 131, 'Coramy', 10) -raw_string += printText(2, "9", 0, 0, 1, 24, 131, '5 bis, rue Denis Cordonnier', 10) -raw_string += printText(2, "9", 0, 0, 1, 16, 131, '59820 GRAVELINES', 10) - -raw_string += printText(2, "9", 0, 0, 2, 91, 131, client_title, 10) -raw_string += printText(2, "9", 0, 0, 2, 79, 131, client_address_1, 10) -raw_string += printText(2, "9", 0, 0, 2, 69, 131, client_address_2, 10) -raw_string += printText(2, "9", 0, 0, 3, 57, 131, client_city, 10) -raw_string += printText(2, "9", 0, 0, 3, 46, 131, '', 10) - -raw_string += printText(2, "9", 0, 0, 1, 5, 131, delivery.getId(), 10) -raw_string += printText(2, "9", 0, 0, 1, 5, 86, str(container.getIntIndex()), 10) - -if delivery.getDeliveryMode() != None: - raw_string += printText(2, "9", 0, 0, 1, 5, 46, delivery.getDeliveryMode(), 10) - -raw_string += printText(4, "d", 8, 2, 220, 37, 8, container.getSerialNumber(), 10) - -# set the quentity to print -raw_string += setNumber() -raw_string += endFormat() - -# send data to printer -context.sendRawToCups(printer_name, raw_string) diff --git a/product/Coramy/skins/coramy_trade/Container_sendExtandEdi.py b/product/Coramy/skins/coramy_trade/Container_sendExtandEdi.py deleted file mode 100755 index fff39be3222db8dc16bee39014d3a1cc00ed5ba2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_sendExtandEdi.py +++ /dev/null @@ -1,99 +0,0 @@ -## Script (Python) "Container_sendExtandEdi" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -from DateTime import DateTime -from string import zfill,ljust - -request = context.REQUEST -msg = '' - - -def decoupe(s,width): - from string import ljust - import string - if len(s) > width: - result = s[-width:] - else: - #result = string.ljust(s,width) - result = s + (' ' * (width-len(s))) - #return ' '+s - return result - -def chaine(num, width): - s = str(int(num)) - if len(s) > width: - result = s[-width:] - else: - result = zfill(s,width) - return result - - -object_list = context.object_action_list(selection_name='sales_packing_list_selection') -for delivery in object_list: - try: - if delivery.getDeliveryMode() == 'Transporteur/Extand': - - # Destination - client_title = delivery.getDestinationValue(portal_type=['Organisation']).getTitle() - client_address_items = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().asText(country='France').split('\n') - client_address_1 = client_address_items[0] - if len(client_address_items) > 2 : - client_address_2 = client_address_items[1] - else : - client_address_2 = '' - if len(client_address_items) > 3 : - client_address_3 = client_address_items[2] - else : - client_address_3 = '' - - #client_city = client_address_items[len(client_address_items)-1] - client_city = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().getCity() - - client_zip_code = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultAddress().getZipCode() - - client_tel = delivery.getDestinationValue(portal_type=['Organisation']).getDefaultTelephone() - if client_tel != None: - client_tel = client_tel.asText().split('\n')[0] - else: - client_tel = '' - - - - plat = context.PlanTransportExtand(client_zip_code[:2])[0] - - - container_list = delivery.contentValues(filter={'portal_type':'Container'}) - for container in container_list: - - #recepisse = "%08d%02d" % (delivery.getId() ,container.getIntIndex()) - recepisse = chaine( delivery.getId(), 8 )+chaine(str(container.getIntIndex()) , 2) - - case_society = { - 'BLS':'5433', - 'Houvenaegel':'1194', - 'Coramy':'0193' - } - source_section = delivery.getSourceSectionTitle() - code_client = case_society[ source_section ] - - msg += "301959"+code_client+recepisse+"0100"+client_zip_code[:2]+chaine(container.getGrossWeight() * 10 , 3) - - msg += DateTime().strftime("%Y%m%d") - - num_com_client = delivery.getCausalityValue(portal_type=['Sales Order']).getDestinationReference() - msg += plat+"001000"+decoupe( num_com_client ,80)+decoupe(client_title ,32)+decoupe(client_address_1,32) - msg += decoupe(client_address_2,32)+decoupe(client_address_3,32)+decoupe(client_zip_code,10) - msg += decoupe(client_city,32)+decoupe(client_tel,16)+'\r\n' - except: - message='Erreur+sur+la+livraison:+identifiant+%s.' % (delivery.getId()) - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - -request.RESPONSE.setHeader('Content-Type','application/text') -return msg diff --git a/product/Coramy/skins/coramy_trade/Container_zGetCellList.org.zsql b/product/Coramy/skins/coramy_trade/Container_zGetCellList.org.zsql deleted file mode 100755 index 63b488087d11e11ff014a0a25fb23a74d3c50ea7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_zGetCellList.org.zsql +++ /dev/null @@ -1,41 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid -sort_on</params> -SELECT - container_cell.uid, container_cell.Id, container_cell.path, container_cell.Description, movement.variation_text -FROM - catalog AS container_cell, catalog AS container_line, movement -WHERE -(( - container_cell.parent_uid = container_line.uid -AND - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - movement.uid = container_cell.uid -AND - container_cell.portal_type = "Container Cell" -) -OR -( - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - container_line.uid = container_cell.uid -AND - movement.uid = container_cell.uid -AND - movement.has_cell_content = 0 -AND - container_line.portal_type = "Container Line" -)) -AND container_cell.portal_type <> "Container" -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Container_zGetCellList.zsql b/product/Coramy/skins/coramy_trade/Container_zGetCellList.zsql deleted file mode 100755 index 9bef19acc07520b9cbc712d328ac84f0b36bff40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_zGetCellList.zsql +++ /dev/null @@ -1,43 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid -sort_on</params> -SELECT - container_cell.uid, container_cell.Id, container_cell.path, container_cell.Description, movement.variation_text, movement.delivery_uid -FROM - catalog AS container_cell, catalog AS container_line, movement -WHERE - movement.delivery_uid = <dtml-sqlvar getDeliveryUid type="int"> -AND -(( - container_cell.parent_uid = container_line.uid -AND - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - movement.uid = container_cell.uid -AND - container_cell.portal_type = "Container Cell" -) -OR -( - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - container_line.uid = container_cell.uid -AND - movement.uid = container_cell.uid -AND - movement.has_cell_content = 0 -AND - container_line.portal_type = "Container Line" -)) -AND container_cell.portal_type <> "Container" -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Container_zGetTotal.zsql b/product/Coramy/skins/coramy_trade/Container_zGetTotal.zsql deleted file mode 100755 index 280b400631703968951f5e44ec3d66bfaad2d7b5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Container_zGetTotal.zsql +++ /dev/null @@ -1,39 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid</params> -SELECT - SUM(movement.target_quantity) AS target_total_quantity -FROM - catalog AS container_cell, catalog AS container_line, movement -WHERE - movement.delivery_uid = <dtml-sqlvar getDeliveryUid type="int"> -AND -(( - container_cell.parent_uid = container_line.uid -AND - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - movement.uid = container_cell.uid -AND - container_cell.portal_type = "Container Cell" -) -OR -( - container_line.parent_uid = <dtml-sqlvar uid type="int"> -AND - container_line.uid = container_cell.uid -AND - movement.uid = container_cell.uid -AND - movement.has_cell_content = 0 -AND - container_line.portal_type = "Container Line" -)) -AND container_cell.portal_type <> "Container" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/DeliveryCell_getContainedTargetQuantity.py b/product/Coramy/skins/coramy_trade/DeliveryCell_getContainedTargetQuantity.py deleted file mode 100755 index abb15bc68678fa044e44dcf91ecf62185d07aaf0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryCell_getContainedTargetQuantity.py +++ /dev/null @@ -1,29 +0,0 @@ -## Script (Python) "DeliveryCell_getContainedTargetQuantity" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_cell = context - -if delivery_cell.getPortalType() in ('Sales Packing List Line', 'Purchase Packing List Line') : - delivery_uid = delivery_cell.aq_parent.getUid() -else : -# we are on a Delivery Cell - delivery_uid = delivery_cell.aq_parent.aq_parent.getUid() - -resource_uid = delivery_cell.getResourceValue().getUid() -variation_text = delivery_cell.getVariationText() - -sql_list = delivery_cell.DeliveryCell_zGetContainedTargetQuantity(delivery_uid=delivery_uid,resource_uid=resource_uid,variation_text=variation_text) - -if len(sql_list)>0 : - if sql_list[0].target_quantity is not None : - return float(sql_list[0].target_quantity) - else : - return 0 -else : - return 0 diff --git a/product/Coramy/skins/coramy_trade/DeliveryCell_zGetContainedTargetQuantity.zsql b/product/Coramy/skins/coramy_trade/DeliveryCell_zGetContainedTargetQuantity.zsql deleted file mode 100755 index 1f9daee47f9fea37a5f78803f6562dc2f0c1b2de..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryCell_zGetContainedTargetQuantity.zsql +++ /dev/null @@ -1,30 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>delivery_uid -resource_uid -variation_text</params> -SELECT - SUM(movement.target_quantity) AS target_quantity -FROM - catalog AS container_cell, movement -WHERE - movement.delivery_uid = <dtml-sqlvar delivery_uid type="int"> -AND - movement.has_cell_content = 0 -AND - container_cell.uid = movement.uid -AND - (container_cell.portal_type = "Container Cell" OR container_cell.portal_type = "Container Line") -<dtml-if resource_uid> -AND movement.resource_uid = <dtml-sqlvar resource_uid type="int"> -</dtml-if> -<dtml-if variation_text> -AND movement.variation_text = "<dtml-var variation_text>" -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/DeliveryCell_zGetItemList.zsql b/product/Coramy/skins/coramy_trade/DeliveryCell_zGetItemList.zsql deleted file mode 100755 index c66509b49c760a03fc9027f294045c9981c814dd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryCell_zGetItemList.zsql +++ /dev/null @@ -1,25 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid -sort_on</params> -SELECT - item.uid, item.Id, item.path, item.Description -FROM - catalog AS item, category -WHERE - category.uid = <dtml-sqlvar uid type="int"> -AND - category.category_uid = item.uid -AND - category.base_category_uid = <dtml-var "portal_categories.aggregate.uid"> - -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/DeliveryLine_asCellRange.py b/product/Coramy/skins/coramy_trade/DeliveryLine_asCellRange.py deleted file mode 100755 index 71b6194ade5e921b22ddb1b18f1e0e4219361cef..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryLine_asCellRange.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "DeliveryLine_asCellRange" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -line_ids = context.order_line_matrix_item_list(base_category_list = ('coloris', 'variante'), base=1) -column_ids = context.order_line_matrix_item_list(base_category_list = ('taille',), base=1) -tab_ids = context.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), - base=1, include=0) - -line_ids = map(lambda x: x[0], line_ids) -column_ids = map(lambda x: x[0], column_ids) -tab_ids = map(lambda x: x[0], tab_ids) - - -if len(tab_ids) is 0: - return [line_ids, column_ids] -elif tab_ids[0] is None: - return [line_ids, column_ids] -else: - return [line_ids, column_ids, tab_ids] diff --git a/product/Coramy/skins/coramy_trade/DeliveryLine_getCorrespondanceDict.py b/product/Coramy/skins/coramy_trade/DeliveryLine_getCorrespondanceDict.py deleted file mode 100755 index de83da6833d694712d643d68492a27f1d86a3202..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryLine_getCorrespondanceDict.py +++ /dev/null @@ -1,28 +0,0 @@ -## Script (Python) "DeliveryLine_getCorrespondanceDict" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_line = context -correspondance_dict = {} - -if delivery_line.hasCellContent() : - variation_base_category_list = delivery_line.getVariationBaseCategoryList() - for base_category in variation_base_category_list : - correspondance_dict[base_category] = {} - for cell in delivery_line.contentValues(filter={'portal_type' : ['Delivery Cell', 'Invoice Cell']}) : - if 'coloris' in variation_base_category_list : - correspondance_dict['coloris']['coloris/'+cell.getColoris()] = cell.Amount_getColorisClient() - if 'taille' in variation_base_category_list : - if 'morphologie' in variation_base_category_list : - correspondance_dict['taille']['taille/'+cell.getTaille()+'morphologie/'+cell.getMorphologie()] = cell.Amount_getTailleClient() - else : - correspondance_dict['taille']['taille/'+cell.getTaille()] = cell.Amount_getTailleClient() - if 'morphologie' in variation_base_category_list : - correspondance_dict['morphologie']['morphologie/'+cell.getMorphologie()] = cell.getMorphologieValue().getMorphoTypeTitle() - -return correspondance_dict diff --git a/product/Coramy/skins/coramy_trade/DeliveryLine_getTargetQuantityList.py b/product/Coramy/skins/coramy_trade/DeliveryLine_getTargetQuantityList.py deleted file mode 100755 index 99c62c1209a08e87fd8ed9facac12685f7ce1a12..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryLine_getTargetQuantityList.py +++ /dev/null @@ -1,65 +0,0 @@ -## Script (Python) "DeliveryLine_getTargetQuantityList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=taille_list=[], coloris=None, morphologie=None -##title= -## -delivery_line = context -taille_list = taille_list -target_quantity_list = [] - -def category_property(category, property): - if category <> None : - if hasattr(category,property) : - return getattr(category,property) - else : - return " " - else : - return " " - -if len(taille_list) == 0 : - my_taille = None - if coloris is not None and morphologie is not None : - my_coloris = 'coloris/'+coloris - my_morphologie = 'morphologie/'+morphologie - if delivery_line.getCell(my_coloris, my_taille, my_morphologie, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(my_coloris, my_taille, my_morphologie, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) - elif coloris is not None : - my_coloris = 'coloris/'+coloris - if delivery_line.getCell(my_coloris, my_taille, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(my_coloris, my_taille, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) - else : # coloris is None : - if delivery_line.getCell(None, my_taille, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(None, my_taille, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) -else : - for taille in taille_list : - my_taille = 'taille/'+taille - if coloris is not None and morphologie is not None : - my_coloris = 'coloris/'+coloris - my_morphologie = 'morphologie/'+morphologie - if delivery_line.getCell(my_coloris, my_taille, my_morphologie, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(my_coloris, my_taille, my_morphologie, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) - elif coloris is not None : - my_coloris = 'coloris/'+coloris - if delivery_line.getCell(my_coloris, my_taille, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(my_coloris, my_taille, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) - else : # coloris is None : - if delivery_line.getCell(None, my_taille, base_id='movement') <> None : - target_quantity_list.append(delivery_line.getCell(None, my_taille, base_id='movement').getProperty(key="target_quantity")) - else : - target_quantity_list.append(0) - -return target_quantity_list diff --git a/product/Coramy/skins/coramy_trade/DeliveryLine_zGetTotal.zsql b/product/Coramy/skins/coramy_trade/DeliveryLine_zGetTotal.zsql deleted file mode 100755 index 21fe2d139cfcae0c0f905a67d7a6002c8e65738b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryLine_zGetTotal.zsql +++ /dev/null @@ -1,21 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid</params> -SELECT - SUM(quantity) AS total_quantity, - SUM(total_price) AS total_price, - SUM(target_quantity) AS target_total_quantity, - SUM(target_total_price) AS target_total_price, - AVG(price) AS average_price -FROM catalog, movement -WHERE - catalog.parent_uid = <dtml-sqlvar uid type="int"> -AND - catalog.uid = movement.uid diff --git a/product/Coramy/skins/coramy_trade/DeliveryTest_selectionAssignLocalRoles.py b/product/Coramy/skins/coramy_trade/DeliveryTest_selectionAssignLocalRoles.py deleted file mode 100755 index a21179ccbed5172031e868a5f5364aae5344c97c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/DeliveryTest_selectionAssignLocalRoles.py +++ /dev/null @@ -1,28 +0,0 @@ -## Script (Python) "DeliveryTest_selectionAssignLocalRoles" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('purchase_packing_list_selection',REQUEST=context.REQUEST) -delivery_list = selection(context=context) -request = context.REQUEST - -for delivery_item in delivery_list: - delivery = delivery_item.getObject() - - if delivery is not None : - order_list = delivery.getCausalityValueList() - if len(order_list) > 0 : - order = order_list[0] - # what's the gestionaire of this order - user_name = '' - # are we on a sales order or puchase order ? - if order.getPortalType() == 'Purchase Order' : - user_name = order.getDestinationAdministrationPersonTitle().replace(' ','_') - delivery.assign_gestionaire_designe_roles(user_name = user_name) - -return 'fait' diff --git a/product/Coramy/skins/coramy_trade/Delivery_exportContainerList.py b/product/Coramy/skins/coramy_trade/Delivery_exportContainerList.py deleted file mode 100755 index 3172747499bdb374907ca4c44259b8121ee12a12..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_exportContainerList.py +++ /dev/null @@ -1,51 +0,0 @@ -## Script (Python) "Delivery_exportContainerList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery = context -request = context.REQUEST -tab = '\t' -cr = '\r' -export = '' -container_list = delivery.contentValues(filter={'portal_type':'Container'}) -order = delivery.getCausalityValue(portal_type=['Sales Order']) - -for container_item in container_list : - ligne_container = '' - container=container_item.getObject() - container_line_list = container.contentValues(filter={'portal_type':'Container Line'}) - first_line = container_line_list[0] - - ligne_container += order.getId()+tab - ligne_container += order.getDestinationReference()+tab - ligne_container += order.getGroup()+tab - ligne_container += delivery.getId()+tab - ligne_container += str(container.getIntIndex())+tab - ligne_container += str(len(container_list))+tab - ligne_container += "%06d" % container.getTargetTotalQuantity()+tab - ligne_container += str(container.getGrossWeight())+tab - ligne_container += first_line.getResourceValue().getId()+tab - ligne_container += delivery.getDestinationSectionTitle()+tab - if first_line.getColorisValue() is not None : - ligne_container += first_line.getColorisValue().getId()+tab - else : - ligne_container += ''+tab - ligne_container += first_line.Amount_getTailleClient()+tab - ligne_container += "Maillot de bain"+tab - ligne_container += first_line.Amount_getCodeArticleClient()+tab - ligne_container += first_line.getResourceValue().getDestinationReference()+tab - ligne_container += ''+tab # prix conso - ligne_container += ''+tab # devise - ligne_container += ''+tab # gencod - - ligne_container += cr - export += ligne_container - -request.RESPONSE.setHeader('Content-Type','application/text') - -return export diff --git a/product/Coramy/skins/coramy_trade/Delivery_futureInventoryView.form b/product/Coramy/skins/coramy_trade/Delivery_futureInventoryView.form deleted file mode 100755 index 59be8445f00e331120d02922b877a1d290900d40..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_futureInventoryView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>current_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('resource_title', 'Composant'), ('variation_text', 'Variante'), ('inventory', 'Quantit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Delivery_inventoryView</list_action> - <list_method type="method">Delivery_getFutureInventoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>delivery_future_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Stock futur par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>pie_3d</chart_style> - <chart_title>Excédents Actuels</chart_title> - <css_class></css_class> - <data_method>Resource_getChartCurrentInventoryList</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Excédents Actuels</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_getFutureInventoryList.py b/product/Coramy/skins/coramy_trade/Delivery_getFutureInventoryList.py deleted file mode 100755 index e6881c3641118ad7fb6474090e230b7861ceb852..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_getFutureInventoryList.py +++ /dev/null @@ -1,11 +0,0 @@ -## Script (Python) "Delivery_getFutureInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -resource_uid_list = map(lambda o:o.getResourceUid(),context.contentValues(filter={'portal_type': context.getMovementTypeList()})) -return context.Delivery_zGetInventoryList(resource_uid_list=resource_uid_list, **kw) diff --git a/product/Coramy/skins/coramy_trade/Delivery_getInventoryList.py b/product/Coramy/skins/coramy_trade/Delivery_getInventoryList.py deleted file mode 100755 index 74f48374082f8093f7d6aee9556f081ce6674dcd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_getInventoryList.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "Delivery_getInventoryList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -from DateTime import DateTime -resource_uid_list = map(lambda o:o.getResourceUid(),context.contentValues(filter={'portal_type': context.getMovementTypeList()})) -return context.Delivery_zGetInventoryList(to_date=DateTime(),resource_uid_list=resource_uid_list, **kw) diff --git a/product/Coramy/skins/coramy_trade/Delivery_inventoryView.form b/product/Coramy/skins/coramy_trade/Delivery_inventoryView.form deleted file mode 100755 index 6569c14441dc70275618d0b056b8566f32f57e97..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_inventoryView.form +++ /dev/null @@ -1,140 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Resource Inventory</title> - <row_length>4</row_length> - <name>Resource_inventoryView</name> - <pt>form_view</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>current_inventory_list_box</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('node_title', 'Stock'), ('section_title', 'Propri\xe9taire'), ('resource_relative_url', 'Composant'), ('variation_text', 'Variante'), ('getQuantity', 'Qt\xe9'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('inventory', 'Futur'), ('getQuantityUnit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>Resource_inventoryView</list_action> - <list_method type="method">getFutureInventoryList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>resource_current_inventory</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Stock actuel par variantes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>current_inventory_chart</id> <type>ZGDChart</type> - <values> - <alternate_name></alternate_name> - <bg_transparent type="int">1</bg_transparent> - <chart_style>line_2d</chart_style> - <chart_title>Prévisions</chart_title> - <css_class></css_class> - <data_method>getInventoryHistoryChart</data_method> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <selection_name>resource_current_inventory_chart</selection_name> - <title>Prévisions</title> - <x_title></x_title> - <y_title></y_title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_searchByResource.form b/product/Coramy/skins/coramy_trade/Delivery_searchByResource.form deleted file mode 100755 index 753842a181bca936050483063d7d1fb05bbc4dd7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_searchByResource.form +++ /dev/null @@ -1,170 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>Delivery_searchByResource</name> - <pt>form_view_dialog</pt> - <action>Base_searchHandler</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_resource_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Produits</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Delivery_zSearchResource</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variante_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_splitDeferTransitionForm.form b/product/Coramy/skins/coramy_trade/Delivery_splitDeferTransitionForm.form deleted file mode 100755 index 262174d7908b732d161428d752ed26d40d1fb64c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_splitDeferTransitionForm.form +++ /dev/null @@ -1,149 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Créer un reliquat</title> - <row_length>4</row_length> - <name>Delivery_splitDeferTransitionForm</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Nouvelle date d'expédition</title> - </values> - <tales> - <default>python:here.getTargetStartDate()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Nouvelle date de livraison</title> - </values> - <tales> - <default>python:here.getTargetStopDate()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:''</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_zGetCellList.zsql b/product/Coramy/skins/coramy_trade/Delivery_zGetCellList.zsql deleted file mode 100755 index 7cc575b0993f1f4a3a99f91bacb4530f727284c9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_zGetCellList.zsql +++ /dev/null @@ -1,28 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid -sort_on</params> -SELECT - cell.uid, cell.Id, cell.path, cell.Description, movement.variation_text -FROM - catalog as cell, movement -WHERE - movement.delivery_uid = <dtml-sqlvar uid type="int"> -AND - movement.uid = cell.uid -AND - movement.is_accountable = 1 -AND - cell.portal_type <> "Simulation Movement" -AND - cell.portal_type <> "Container" -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_zGetInventoryList.zsql b/product/Coramy/skins/coramy_trade/Delivery_zGetInventoryList.zsql deleted file mode 100755 index 5c698d6a19dd0bac464b20faae0c5aa2a1815c2e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_zGetInventoryList.zsql +++ /dev/null @@ -1,38 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>resource_uid_list:list -to_date -node_uid -section_uid -variation_text</params> -SELECT - SUM(stock.quantity) as inventory, - node.title AS node_title, - section.title AS section_title, - resource.title AS resource_title, - movement.variation_text AS variation_text -FROM - catalog, movement, stock, catalog as node, catalog as section, catalog as resource -WHERE - catalog.uid = movement.uid -AND catalog.uid = stock.uid -AND (<dtml-in resource_uid_list>movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end> <dtml-else> OR </dtml-if></dtml-in>) -AND movement.is_accountable = 1 -AND node.uid = stock.node_uid -AND section.uid = stock.node_uid -AND movement.resource_uid = resource.uid -<dtml-if to_date>AND movement.start_date < <dtml-sqlvar to_date type="string"> -</dtml-if><dtml-if node_uid>AND stock.node_uid = <dtml-sqlvar node_uid type="int"> -</dtml-if><dtml-if section_uid>AND stock.section_uid = <dtml-sqlvar section_uid type="int"> -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if>GROUP BY - stock.node_uid, stock.section_uid, resource_uid, movement.variation_text -ORDER BY - inventory DESC \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_zGetNeededCellList.zsql b/product/Coramy/skins/coramy_trade/Delivery_zGetNeededCellList.zsql deleted file mode 100755 index f7e8ab1326d30ba094fa78186fc0f43f655f2669..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_zGetNeededCellList.zsql +++ /dev/null @@ -1,30 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid -sort_on</params> -SELECT - cell.uid, cell.Id, cell.path, cell.Description, movement.variation_text -FROM - catalog as cell, movement -WHERE - movement.delivery_uid = <dtml-sqlvar uid type="int"> -AND - movement.uid = cell.uid -AND - movement.is_accountable = 1 -AND - movement.quantity <> 0 -AND - cell.portal_type <> "Simulation Movement" -AND - cell.portal_type <> "Container" -<dtml-if sort_on>ORDER BY - <dtml-var sort_on> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Delivery_zGetTotal.zsql b/product/Coramy/skins/coramy_trade/Delivery_zGetTotal.zsql deleted file mode 100755 index 5327d6716ac7967cdcf8d34bd32da360220b890b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Delivery_zGetTotal.zsql +++ /dev/null @@ -1,29 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid -resource_uid -variation_text</params> -SELECT - SUM(quantity) AS inventory, - SUM(quantity) AS total_quantity, - SUM(total_price) AS total_price, - SUM(target_quantity) AS target_total_quantity, - SUM(target_total_price) AS target_total_price, - AVG(price) AS average_price -FROM movement, catalog -WHERE - movement.delivery_uid = <dtml-sqlvar uid type="int"> -<dtml-if resource_uid>AND (<dtml-in resource_uid> movement.resource_uid = <dtml-sqlvar sequence-item type="int"><dtml-if sequence-end><dtml-else> OR </dtml-if></dtml-in>) -</dtml-if><dtml-if variation_text>AND movement.variation_text = <dtml-sqlvar variation_text type="string"> -</dtml-if> -AND movement.is_accountable = 1 -AND catalog.portal_type <> "Container" -AND catalog.portal_type <> "Simulation Movement" -AND catalog.uid = movement.uid \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/InvoiceLine_priceView.form b/product/Coramy/skins/coramy_trade/InvoiceLine_priceView.form deleted file mode 100755 index 1a06172b9acafaaaf0dcc351477e37a046ecc645..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/InvoiceLine_priceView.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>packing_list_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('ttarget_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/InvoiceLine_quantityView.form b/product/Coramy/skins/coramy_trade/InvoiceLine_quantityView.form deleted file mode 100755 index fe8b9ba9804775d6a07279c0d2c3c82a6e2cc84c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/InvoiceLine_quantityView.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>packing_list_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/InvoiceLine_view.form b/product/Coramy/skins/coramy_trade/InvoiceLine_view.form deleted file mode 100755 index 2d8fb8ee1e610f1212a35a553cff95167a69d365..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/InvoiceLine_view.form +++ /dev/null @@ -1,384 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>sales_packing_list_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité facturée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité facturée : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_value_added_tax_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Taux de TVA</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_value_added_tax_recoverable</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Non', '0'), ('Oui', '1')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Soumis à la TVA</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:str(here.getValueAddedTaxRecoverable())</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Invoice_print.pdf b/product/Coramy/skins/coramy_trade/Invoice_print.pdf deleted file mode 100755 index 4792da41b2140e7e7da8624a8f246ac370d20d6c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_print.pdf +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<document filename="report01.pdf" - tal:define="invoice_line_list python:here.contentValues(filter={'portal_type':'Invoice Line'}); - from_organisation python:here.restrictedTraverse('organisation/27'); - client_invoice python:here.getDefaultValue('destination_section',spec=['Organisation', 'Person']); - client_delivery python:here.getDefaultValue('destination_section',spec=['Organisation', 'Person']); - total_price python:here.getDefaultTotalPrice();"> - <title>Invoice</title> - <author>Nexedi</author> - <subject>Coramy Invoice Example</subject> - <content> - - <tal:block tal:repeat="invoice_line invoice_line_list"> - <tal:block tal:define="cell_range_list python:invoice_line.getCellRange(base_id='movement')"> - - <table splitbyrow="1" repeatrows="0" repeatcols="0" style="HeadLine"> - <tr> - <td colwidth="5cm" tal:content="python: invoice_line.getResourceValue().getDescription()"> - 1 pi?ce 2unis - </td> - <td colwidth="5cm">12345009 858</td> - </tr> - </table> - - <table splitbyrow="1" repeatrows="0" repeatcols="0" style="HeadLine2"> - <tr> - <td colwidth="5cm">80% Polyamide 20% Elasthanne Lycra</td> - <td colwidth="5cm">61124110</td> - </tr> - </table> - - <table splitbyrow="1" repeatrows="1" repeatcols="0" style="CellTable" - tal:define="cell_x_range python: list(cell_range_list[1]); - cell_y_range python: list(cell_range_list[0])"> - <tal:block tal:define="dummy python: cell_x_range.sort(); - dummy python: cell_y_range.sort()"/> - <tr> - <td colwidth="0.6cm"> </td> - <td colwidth="5.4cm"> </td> - <tal:block tal:repeat="x cell_x_range"> - <td colwidth="1cm" tal:content="python: x.split('/')[-1]"> </td> - </tal:block> - <td tal:attributes="colwidth python: '%fcm' % (8.2 - len(cell_x_range))"> </td> - <td colwidth="1.5cm"></td> - <td colwidth="1.5cm"></td> - <td colwidth="2.2cm"> </td> - </tr> - <tal:block tal:repeat="y cell_y_range" tal:define="price_list python:[]"> - <tal:block tal:repeat="x cell_x_range"> - <tal:block tal:define="cell python:invoice_line.getCell(y, x, base_id='movement')"> - <tal:block tal:condition="python:cell is not None and cell.getPrice() not in price_list"> - <tal:block tal:define="dummy python:price_list.append(cell.getPrice())"/> - </tal:block> - </tal:block> - </tal:block> - <tal:block tal:repeat="price price_list"> - <tal:block tal:define="global quantity python: 0"/> - <tal:block tal:repeat="x cell_x_range"> - <tal:block tal:define="cell python:invoice_line.getCell(y, x, base_id='movement')"> - <tal:block tal:condition="python:cell is not None and cell.getPrice() == price"> - <tal:block tal:define="global quantity python: quantity + cell.getQuantity()"/> - </tal:block> - </tal:block> - </tal:block> - <tr> - <td> </td> - <td tal:content="python: y"> </td> - <tal:block tal:repeat="x cell_x_range"> - <tal:block tal:define="cell python:invoice_line.getCell(y, x, base_id='movement')"> - <td><tal:block tal:condition="python:cell is not None and cell.getPrice() == price"><span tal:replace="python: '%.0f ' % cell.getQuantity()"/></tal:block></td> - </tal:block> - </tal:block> - <td> </td> - <td tal:content="python: '%d' % quantity">413</td> - <td tal:content="python: '%.2f' % price">6,27</td> - <td tal:content="python: '%.2f' % (quantity * price)">2 589,51</td> - </tr> - </tal:block> - </tal:block> - </table> - - <spacer height="5"/> - - <table splitbyrow="1" repeatrows="1" repeatcols="0" style="TotalLine"> - <tr> - <td colwidth="12cm"> </td> - <td colwidth="1.2cm">Total</td> - <td colwidth="1cm"> </td> - <td colwidth="1.5cm" tal:content="python:invoice_line.getTotalQuantity() or 0">2 298</td> - <td colwidth="1.5cm">pi?ces</td> - </tr> - </table> - - </tal:block> - </tal:block> - - </content> -</document> diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetDescription.py b/product/Coramy/skins/coramy_trade/Invoice_zGetDescription.py deleted file mode 100755 index 9fd2231d88e4f24ddec0ed3a5a7cffdb31fbca3a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetDescription.py +++ /dev/null @@ -1,39 +0,0 @@ -## Script (Python) "Invoice_zGetDescription" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -from string import join - -description = context.getComment('') -return description - -# Try to cut the comment without cutting the words -# pbl: capital letter are larger, and the test on the length of sentence isn't good ... -def recursive_string_cut(b,s): - l = 80 - if len(s) < l: - return b+s - else: - c = s[:l].split(' ') - if len(c) < 2: - # I don't think that a word with more than 80 caracters can exist ... and it can crash the memory - return s[:l] - else: - return recursive_string_cut(b+join(c[:-2],' ')+'\n', join(c[-2:],' ')+s[l:] ) - - -# get all the lines -description_lines = description.split('\n') - -# cut the too long lines -result_description_lines = map( ( lambda x: recursive_string_cut('',x) ),description_lines) - -# recreate a string -result = join(result_description_lines,'\n') - -return result diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetDueDate.py b/product/Coramy/skins/coramy_trade/Invoice_zGetDueDate.py deleted file mode 100755 index 3ee068fd2664833895092954117d879e6858c07c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetDueDate.py +++ /dev/null @@ -1,49 +0,0 @@ -## Script (Python) "Invoice_zGetDueDate" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -packing_list = context.getCausalityValueList(portal_type=['Sale Packing List','Sales Packing List'])[0] -order = packing_list.getCausalityValueList(portal_type=['Sale Order','Sales Order'])[0] - -""" -trade_ref = order.getTradeDateId() -case = { - 'Facture':context.getStartDate, - 'Commande':order.getStartDate, - 'Livraison':packing_list.getTargetStopDate -} -ref_date = case[trade_ref]() -""" -from DateTime import DateTime - -due_date = packing_list.getTargetStopDate( DateTime() ) - -due_date += context.getPaymentTerm(30) - -peom = context.getPaymentEndOfMonth() -pat = order.getPaymentAdditionalTerm() - -if peom: - i = 0 - month = due_date.month() - while (month == (due_date + i).month()): - i += 1 - due_date = (due_date + i - 1) - - if pat != None: - due_date += pat - -else: - if pat != None: - i = 0 - month = due_date.month() - while (month == (due_date + i).month()): - i -= 1 - due_date = (due_date + i + pat) - -return due_date diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetEscompteDescription.py b/product/Coramy/skins/coramy_trade/Invoice_zGetEscompteDescription.py deleted file mode 100755 index 7865d5a1d204dfa2f34a7cde1fa1b4692e38452b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetEscompteDescription.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "Invoice_zGetEscompteDescription" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -tmp_list = context.contentValues(filter={'portal_type':'Remise', 'discount_type_title':'Escompte'}) - -escompte_list = filter(lambda item: item.getDiscountType() == 'Escompte', tmp_list) - -if escompte_list != []: - escompte_object = escompte_list[0] - if escompte_object.getDescription() != None: - escompte_description = string.replace(escompte_object.getDescription(),'%','%%')[:45] - elif escompte_object.getDiscountRatio() != None: - escompte_description = '%.2f' % (escompte_object.getDiscountRatio() * 100) + '%% sous 10 jours' - else: - escompte_description = '2%% sous 10 jours' -else: - escompte_description = '2%% sous 10 jours' - -return escompte_description diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetPaymentTime.py b/product/Coramy/skins/coramy_trade/Invoice_zGetPaymentTime.py deleted file mode 100755 index 385ad380c438ad33da5834adfb0f1a4739421c9a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetPaymentTime.py +++ /dev/null @@ -1,30 +0,0 @@ -## Script (Python) "Invoice_zGetPaymentTime" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -packing_list = context.getCausalityValueList(portal_type=['Sale Packing List','Sales Packing List'])[0] -order = packing_list.getCausalityValueList(portal_type=['Sale Order','Sales Order'])[0] - -payment_term = context.getPaymentTerm(30) - -payment_end_of_month = context.getPaymentEndOfMonth() - -pat = order.getPaymentAdditionalTerm() - -result = '%i jours ' % payment_term - -if pat == None: - if payment_end_of_month: - result += 'en fin de mois' - else: - result += 'net' -else: - result += 'le %i' % pat - - -return result diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetSourceSectionDescription.py b/product/Coramy/skins/coramy_trade/Invoice_zGetSourceSectionDescription.py deleted file mode 100755 index 0495701242e57858071ea078ee84eac355b6fa3b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetSourceSectionDescription.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "Invoice_zGetSourceSectionDescription" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -source_section_title = context.getSourceSectionTitle() - - -case = { - 'Coramy': ('Coramy', - '5 bis, rue Denis Cordonnier - 59820 Gravelines - Tél. : 33(0)3 28 51 91 51 - Fax : 33(0)3 28 23 34 96', - 'MAILLOTS DE BAIN - GYM - SWIMSUITS - FITNESS', - 'S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971', - '40'), - 'BLS': ('BLS' , - '5 bis, rue Denis Cordonnier - 59820 Gravelines - Tél. : 33(0)3 28 51 86 26 - Fax : 33(0)3 28 23 34 96', - 'LICENSE MAILLOTS DE BAIN DIM FEMME & HOMME', - 'S.A.R.L. au capital de 10.000 € - T.V.A. FR 51 442 959 243 - R.C. Dunkerque 442 959 243 - SIRET 442 959 243 00019' - '60'), - 'Houvenaegel':('Houvenaegel' , - '5 bis, rue Denis Cordonnier - 59820 Gravelines - Tél. : 33(0)3 28 51 91 55 - Fax : 33(0)3 28 23 34 96', - 'MAILLOTS DE BAIN - GYM - SWIMSUITS - FITNESS', - 'S.A.R.L. au capital de 7.622,45 € - T.V.A. FR 07 422 769 810 - R.C. Dunkerque 422 769 810 - SIRET 422 769 810 00025', - '20') -} - -return case[ source_section_title ] diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetTotal.zsql b/product/Coramy/skins/coramy_trade/Invoice_zGetTotal.zsql deleted file mode 100755 index 491496a3fbe74b9e834659de96a17f716bbf3804..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetTotal.zsql +++ /dev/null @@ -1,13 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>uid</params> -SELECT sum(movement.quantity) AS total_quantity, sum(movement.total_price) AS total_price from movement -WHERE movement.delivery_uid = <dtml-var uid> -AND movement.has_cell_content = 0 \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetTotalNetPrice.py b/product/Coramy/skins/coramy_trade/Invoice_zGetTotalNetPrice.py deleted file mode 100755 index f8158636bfb97221eff0b5bd7081f483b134e5f6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetTotalNetPrice.py +++ /dev/null @@ -1,23 +0,0 @@ -## Script (Python) "Invoice_zGetTotalNetPrice" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# price = context.getTotalPrice() -price = context.Invoice_zGetTotal()[0].total_price - -discount_list_tmp = context.contentValues(filter={'portal_type':'Remise'}) -discount_list = filter(lambda x: x not in [None,0] ,discount_list_tmp) - -if len(discount_list) > 1: - discount_list.sort(lambda x,y: cmp(x.getIntIndex(),y.getIntIndex())) - -for discount_line in discount_list: - if discount_line.getImmediateDiscount(): - price *= (1 - discount_line.getDiscountRatio()) - -return price diff --git a/product/Coramy/skins/coramy_trade/Invoice_zGetTotalVat.py b/product/Coramy/skins/coramy_trade/Invoice_zGetTotalVat.py deleted file mode 100755 index 6c08aad87f0214d57750fee34ab2187c2bd3acfa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Invoice_zGetTotalVat.py +++ /dev/null @@ -1,21 +0,0 @@ -## Script (Python) "Invoice_zGetTotalVat" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -price = context.Invoice_zGetTotalNetPrice() - -if context.getValueAddedTaxRecoverable(): - vat_ratio = context.getValueAddedTaxRatio() - if vat_ratio != None: - price *= vat_ratio - else: - price = 0 -else: - price = 0 - -return price diff --git a/product/Coramy/skins/coramy_trade/Movement_lookupPrice.py b/product/Coramy/skins/coramy_trade/Movement_lookupPrice.py deleted file mode 100755 index b923806a37dc25fd48337e645319f5c2d63014ea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Movement_lookupPrice.py +++ /dev/null @@ -1,15 +0,0 @@ -## Script (Python) "Movement_lookupPrice" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -resource = context.getResourceValue() -if resource is not None: - return resource.getSourceBasePrice(0)/resource.getPricedQuantity() - # return resource.getPrice(context=context) # calls a Resource_lookupPrice itself -else: - return None diff --git a/product/Coramy/skins/coramy_trade/Movement_zList.zsql b/product/Coramy/skins/coramy_trade/Movement_zList.zsql deleted file mode 100755 index 424f13ecf3968a66ad7c4e105ba919c9b9bb96ca..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Movement_zList.zsql +++ /dev/null @@ -1,52 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>query -sort_on</params> -<dtml-if sort_on> -<dtml-if query> -SELECT - DISTINCT catalog.* , movement.* -FROM - catalog, movement, category, roles_and_users -WHERE - catalog.uid=category.uid -AND catalog.uid = movement.uid -AND catalog.uid=roles_and_users.uid -AND <dtml-var query> -ORDER BY <dtml-var sort_on> -<dtml-else> -SELECT - DISTINCT catalog.* , movement.* -FROM - catalog, movement -WHERE - catalog.uid = movement.uid -ORDER BY <dtml-var sort_on> -</dtml-if> -<dtml-else> -<dtml-if query> -SELECT - DISTINCT catalog.* , movement.* -FROM - catalog, movement, category, roles_and_users -WHERE - catalog.uid=category.uid -AND catalog.uid = movement.uid -AND catalog.uid=roles_and_users.uid -AND <dtml-var query> -<dtml-else> -SELECT - DISTINCT catalog.* , movement.* -FROM - catalog, movement -WHERE - catalog.uid = movement.uid -</dtml-if> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Movement_zSetDestinationTotalAssetPrice.zsql b/product/Coramy/skins/coramy_trade/Movement_zSetDestinationTotalAssetPrice.zsql deleted file mode 100755 index 725776603762034bbe9cfad4477f9fdaf1a2991f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Movement_zSetDestinationTotalAssetPrice.zsql +++ /dev/null @@ -1,20 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid -total_asset_price</params> -UPDATE - stock LEFT JOIN movement ON (stock.uid = movement.uid) -SET - stock.total_asset_price = <dtml-sqlvar total_asset_price type="float"> -WHERE - stock.uid = <dtml-sqlvar uid type="int"> -AND -( movement.quantity > 0 AND stock.quantity > 0 -OR movement.quantity < 0 AND stock.quantity < 0) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Movement_zSetSourceTotalAssetPrice.zsql b/product/Coramy/skins/coramy_trade/Movement_zSetSourceTotalAssetPrice.zsql deleted file mode 100755 index fb4956967579b03eca32318ce5514187b6e2415c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Movement_zSetSourceTotalAssetPrice.zsql +++ /dev/null @@ -1,20 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>uid -total_asset_price</params> -UPDATE - stock LEFT JOIN movement ON (stock.uid = movement.uid) -SET - stock.total_asset_price = <dtml-sqlvar total_asset_price type="float"> -WHERE - stock.uid = <dtml-sqlvar uid type="int"> -AND -( movement.quantity > 0 AND stock.quantity < 0 -OR movement.quantity < 0 AND stock.quantity > 0) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/Order_heavyControl.py b/product/Coramy/skins/coramy_trade/Order_heavyControl.py deleted file mode 100755 index 54ed798e828791f08015387c9d25b8b03a9878e7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Order_heavyControl.py +++ /dev/null @@ -1,52 +0,0 @@ -## Script (Python) "Order_heavyControl" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# This script makes controls on an order -# this script is called from a workflow_script during transitions -# return an error message ou empty string if ok - -order = context -movement_list = [] - -# first make light control -error_message = order.Order_lightControl() - -# Check each movement -for m in context.getMovementList(): - if m.getPrice() in (None, '') : - error_message += 'Prix manquant: produit %s ou variante %s' % (m.getResource(), m.getVariationText()) - if m.getQuantity() in (None, '') : - error_message += 'Quantité manquante: produit %s ou variante %s' % (m.getResource(), m.getVariationText()) - -# then check every simulation_movement in relation with the order : -if order.getPortalType() == 'Purchase Order' : - filter_dict = {'portal_type': 'Purchase Order Line'} -elif order.getPortalType() == 'Sales Order' : - filter_dict = {'portal_type': 'Sales Order Line'} -else : - filter_dict = {'portal_type': 'Production Order Line'} - -movement_list += order.getOrderRelatedValueList(portal_type = 'Simulation Movement') -for order_line in order.contentValues(filter=filter_dict) : - movement_list += order_line.getOrderRelatedValueList(portal_type = 'Simulation Movement') - for cell in order_line.contentValues(filter={'portal_type': 'Delivery Cell'}) : - movement_list += cell.getOrderRelatedValueList(portal_type = 'Simulation Movement') - -# check each simulation movement : -for movement in movement_list : - if movement.getTargetQuantity() != 0 and movement.getPrice() == 0 or \ - movement.getTargetQuantity() != 0 and movement.getPrice() == '' or \ - movement.getTargetQuantity() != 0 and movement.getPrice() is None : - if len(error_message) == 0 : - error_message += 'Prix manquant: produit %s ou variante %s' % (movement.getResource(), movement.getVariationText()) - else : - error_message += ' - Prix manquant: produit %s ou variante %s' % (movement.getResource(), movement.getVariationText()) - break - -return error_message diff --git a/product/Coramy/skins/coramy_trade/Order_lightControl.py b/product/Coramy/skins/coramy_trade/Order_lightControl.py deleted file mode 100755 index 61ccae557a13b74cec4d6376fa87c055a50be9b4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Order_lightControl.py +++ /dev/null @@ -1,67 +0,0 @@ -## Script (Python) "Order_lightControl" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# This script makes a few controls on an order -# this script is called from a workflow_script during transitions -# return an error message ou empty string if ok - -error_message = '' -order = context - -# check if profile is completete -if order.getSourceValue() is None or \ - order.getDestinationValue() is None or \ - order.getSourceSectionValue() is None or \ - order.getDestinationSectionValue() is None or \ - order.getSourceDecisionValue() is None or \ - order.getDestinationDecisionValue() is None or \ - order.getSourceAdministrationValue() is None or \ - order.getDestinationAdministrationValue() is None or \ - order.getSourcePaymentValue() is None or \ - order.getDestinationPaymentValue() is None : - - if len(error_message) == 0 : - error_message += 'Profil incomplet' - else : - error_message += ' - Profil incomplet' - -# check if order is not empty -if order.getPortalType() == 'Purchase Order' : - filter_dict = {'portal_type': 'Purchase Order Line'} -elif order.getPortalType() == 'Sales Order': - filter_dict = {'portal_type': 'Sales Order Line'} -elif order.getPortalType() == 'Packing Order': - filter_dict = {'portal_type': 'Packing Order Line'} -else : - filter_dict = {'portal_type': 'Production Order Line'} -order_line_list = order.contentValues(filter=filter_dict) -if len(order_line_list)==0 : - if len(error_message) == 0 : - error_message += 'Commande vide' - else : - error_message += ' - Commande vide' -else : - # check if each line is linked to a resource - # and if variations are well defined - for order_line in order_line_list : - if order_line.getResourceValue() is None : - if len(error_message) == 0 : - error_message += 'Ligne sans produit' - else : - error_message += ' - Ligne sans produit' - break - if not order_line.getVariationBaseCategoryList() in (None, []) and not order_line.getVariationCategoryList() in (None, []) : - if len(order_line.getVariationBaseCategoryList()) == 0 and len(order_line.getVariationCategoryList()) <> 0 : - if len(error_message) == 0 : - error_message += 'Variantes mal définies' - else : - error_message += ' - Variantes mal définies' - break - -return error_message diff --git a/product/Coramy/skins/coramy_trade/Order_updateLocalRoles.py b/product/Coramy/skins/coramy_trade/Order_updateLocalRoles.py deleted file mode 100755 index 37b7a0e8eeafbbe770aa2ed5832b97b90d008d94..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/Order_updateLocalRoles.py +++ /dev/null @@ -1,33 +0,0 @@ -## Script (Python) "Order_updateLocalRoles" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -order = context -request = context.REQUEST - -# what's the gestionaire of this order -user_name = '' -# are we on a sales order or puchase order ? -if order.getPortalType() == 'Sales Order' : - user_name = order.getSourceAdministrationTitle().replace(' ','_') -elif order.getPortalType() in ('Purchase Order' , 'Production Order') : - user_name = order.getDestinationAdministrationPersonTitle().replace(' ','_') - -order.assign_gestionaire_designe_roles(user_name = user_name) - -delivery_list = order.getCausalityRelatedValueList(portal_type=["Purchase Packing List", "Sales Packing List", "Production Packing List"]) -for delivery in delivery_list : - # update local_roles - delivery.assign_gestionaire_designe_roles(user_name = user_name) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Roles+mis+a+jour.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/PackingList_getDistinctContainerList.py b/product/Coramy/skins/coramy_trade/PackingList_getDistinctContainerList.py deleted file mode 100755 index a29f029755c19680fb254eb23e598044dc646674..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/PackingList_getDistinctContainerList.py +++ /dev/null @@ -1,45 +0,0 @@ -## Script (Python) "PackingList_getDistinctContainerList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# this method return a list of distinct containers -# it returns a sorted list of tuples (object container, range) -# the range is a tuple (first number of this container, last number of this container) - -delivery = context - -container_list = delivery.contentValues(filter={'portal_type' : 'Container'}) - -ordered_container_list = context.sort_object_list(unordered_list=container_list, sort_order = (('int_index', 'ASC'),) ) - -final_container_list = [] -if len(container_list) > 0 : - container_ref = container_list[0].getContainerText() - container_object = container_list[0] - first_container = 1 - last_container = 1 -else : - container_ref = '' - container_object = None - first_container = 0 - last_container = 0 - -for container in ordered_container_list : - if container.getContainerText() != container_ref : - # append tuple in final_container_list - final_container_list.append((container_object,(first_container,last_container))) - # reset variables - container_object = container - first_container = container.getIntIndex() - container_ref = container.getContainerText() - last_container = container.getIntIndex() - -# append final container in final_container_list -final_container_list.append((container_object,(first_container,last_container))) - -return final_container_list diff --git a/product/Coramy/skins/coramy_trade/PackingList_getTotalGrossWeight.py b/product/Coramy/skins/coramy_trade/PackingList_getTotalGrossWeight.py deleted file mode 100755 index 451aac40900770dcb335f19befc0509763816240..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/PackingList_getTotalGrossWeight.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "PackingList_getTotalGrossWeight" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -packing_list = context -total_gross_weight = 0 - -container_list = packing_list.contentValues(filter={'portal_type':'Container'}) -for container in container_list : - total_gross_weight += container.getGrossWeight(0) - -return total_gross_weight diff --git a/product/Coramy/skins/coramy_trade/PlanTransportExtand.py b/product/Coramy/skins/coramy_trade/PlanTransportExtand.py deleted file mode 100755 index 3ac78722cc955e6542af6235afce8aac1576f6ac..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/PlanTransportExtand.py +++ /dev/null @@ -1,111 +0,0 @@ -## Script (Python) "PlanTransportExtand" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=departement='' -##title= -## -plan_transport = { -'01':('901','01'), -'02':('951','51'), -'03':('963','63'), -'04':('984','84'), -'05':('938','38'), -'06':('906','06'), -'07':('926','26'), -'08':('951','51'), -'09':('932','32'), -'10':('910','10'), -'11':('932','32'), -'12':('982','82'), -'13':('913','13'), -'14':('914','14'), -'15':('963','63'), -'16':('916','16'), -'17':('979','79'), -'18':('945','45'), -'19':('987','87'), -'20':('920','20'), -'21':('921','21'), -'22':('935','35'), -'23':('987','87'), -'24':('987','87'), -'25':('925','25'), -'26':('926','26'), -'27':('976','76'), -'28':('978','78'), -'29':('929','29'), -'30':('984','84'), -'31':('931','31'), -'32':('932','32'), -'55':('954','54'), -'56':('956','56'), -'57':('957','57'), -'58':('921','21'), -'59':('959','59'), -'60':('960','60'), -'61':('972','72'), -'62':('962','62'), -'63':('963','63'), -'64':('964','64'), -'65':('964','64'), -'66':('966','66'), -'67':('967','67'), -'68':('968','68'), -'69':('969','69'), -'70':('925','25'), -'71':('921','21'), -'72':('972','72'), -'73':('974','74'), -'74':('974','74'), -'75':('975','75'), -'76':('976','76'), -'77':('977','77'), -'78':('978','78'), -'79':('979','79'), -'80':('960','60'), -'81':('982','82'), -'82':('982','82'), -'83':('983','83'), -'84':('984','84'), -'85':('944','44'), -'86':('937','37'), -'33':('933','33'), -'34':('934','34'), -'35':('935','35'), -'36':('937','37'), -'37':('937','37'), -'38':('938','38'), -'39':('921','21'), -'40':('964','64'), -'41':('945','45'), -'42':('942','42'), -'43':('942','42'), -'44':('944','44'), -'45':('945','45'), -'46':('982','82'), -'47':('933','33'), -'48':('966','66'), -'49':('949','49'), -'50':('914','14'), -'51':('951','51'), -'52':('910','10'), -'53':('972','72'), -'54':('954','54'), -'87':('987','87'), -'88':('954','54'), -'89':('910','10'), -'90':('925','25'), -'91':('994','94'), -'92':('995','95'), -'93':('992','92'), -'94':('994','94'), -'95':('995','95'), -'98':('906','06'), -} -if departement == '' : - return None -else : - return plan_transport[departement] diff --git a/product/Coramy/skins/coramy_trade/PurchaseOrder_reportList.form b/product/Coramy/skins/coramy_trade/PurchaseOrder_reportList.form deleted file mode 100755 index 178f27de2c8b5a500c0461c6b5636488891133f0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/PurchaseOrder_reportList.form +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Liste de commandes</title> - <name>sales_order_list</name> - <action></action> - <enctype></enctype> - <method>POST</method> - <pt>form_list</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('default_destination_administration_person_title', 'Gestionaire'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('target_stop_date', 'Date Livraison'), ('node_title', 'Fournisseur'), ('resource_title', 'Composant'), ('variation_text', 'Variante'), ('target_quantity', 'Quantit\xe9 command\xe9e'), ('getCurrentInventory', 'Stock'), ('getAvailableInventory', 'Dispo'), ('getFutureInventory', 'Futur')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[('portal_categories/type_composant', 'Type Composant'), ('portal_categories/quantity_unit', 'Unit\xe9 Composant'), ('portal_categories/site', 'Site')]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Purchase Order', 'Purchase Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[('node_title', 'node_title'), ('resource_title', 'resource_title'), ('target_stop_date', 'target_stop_date'), ('variation_text', 'variation_text')]</search_columns> - <select type="int">1</select> - <selection_name>purchase_report_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns type="list">[]</sort_columns> - <stat_method></stat_method> - <title>Commandes achat</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_dateSearch.form b/product/Coramy/skins/coramy_trade/SaleInvoice_dateSearch.form deleted file mode 100755 index a5aa25844c5f2ee7b5022fb896c8092d2ba2afcd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_dateSearch.form +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Ne pas utiliser, ca ne marche pas encore ...</title> - <name>SaleInvoice_dateSearch</name> - <action>sales_invoice_list</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default>2004/02/27 16:46:00 GMT+1</default> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>list</input_style> - <required type="int">1</required> - <time_separator>:</time_separator> - <title>Date de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSage.py b/product/Coramy/skins/coramy_trade/SaleInvoice_exportSage.py deleted file mode 100755 index 347231ae4488eae482ebbe2aeee75ebb11e3080b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSage.py +++ /dev/null @@ -1,248 +0,0 @@ -## Script (Python) "SaleInvoice_exportSage" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=batch_mode=0,cr='\r',**kw -##title= -## -# generate a export file from a Sale Invoice for the Sage software - -def priceWrite(price): - from string import zfill - s = '%.2f' % price - width = 13 - if len(s) > width: - result = s[-width:] - else: - result = zfill(s,width) - return result - -def mecg_text(invoice_date, datetime, invoice_number, compta_number, code_comptable, corporate_name, due_date): - - - content = '#MECG'+cr - content += 'VE'+cr - content += invoice_date+cr - - content += datetime+cr - content += invoice_number+(cr*3) - content += compta_number+(cr*2) - content += code_comptable+(cr*2) - content += corporate_name+cr - content += '0'+cr - - content += due_date+cr - content += (('0'+cr)*3) - - return content - -def mecg_text_part2(is_invoice, amount): - - content = '' - content += is_invoice+cr - content += priceWrite(amount)+cr - content += (cr*3)+(('0'+cr)*5) - - return content - -def meca_text(amount): - - content = '#MECA'+cr - content += '1'+cr - content += 'VENTES'+cr - content += priceWrite(amount)+cr - content += '0'+cr - - return content - - - -request = context.REQUEST - - -file_content = '' - -# globals variables -invoice_date = context.getStartDate().strftime('%d%m%y') -from DateTime import DateTime -datetime = DateTime().strftime('%d%m%y') -invoice_number = context.getReference() - -code_comptable = context.getDestinationAdministrationValue().getCodeComptable() -corporate_name = context.getDestinationAdministrationValue().getCorporateName() -due_date = context.Invoice_zGetDueDate().strftime('%d%m%y') - -if context.getValueAddedTaxRecoverable(): - vat = context.Invoice_zGetTotalVat() -else: - vat = 0.0 - -incomeHT = context.getTotalPrice() -income = context.Invoice_zGetTotalNetPrice() -# the decimals must be corrects -payable = float('%.2f' % income) + float('%.2f' % vat); - - -# parameters of SaleInvoice_exportSageCodeComptableList -analytique='VENTES' -source_section_title=context.getSourceSectionTitle() -#amount_type= -region=context.getDestinationAdministrationValue().getDefaultAddressRegion() -if region == None: - region = 'France' -else: - region = region.split('/')[-1] - - -compte_client=context.getDestinationAdministrationValue().getCodeComptable() - -if compte_client in (None, ''): - if not batch_mode: - message="Erreur+sur+la+facture:+il+n\'y+a+pas+de+compte+comptable+sur+l\'organisation+à+facturer" - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - return None - else: - return None - -# only the lasts 5 letters are usable -compte_client = compte_client[-5:] - -cee_region_list = [ -'Belgique', -'Danemark', -'Allemagne', -'Grece', -'Espagne', -'France', -'Irlande', -'Italie', -'Luxembourg', -'Pays-Bas', -'Autriche', -'Portugal', -'Finlande', -'Suede', -'Grande-Bretagne', -'Tchequie', -'Estonie', -'Chypre', -'Letonie', -'Lituanie', -'Hongrie', -'Malte', -'Pologne', -'Slovenie', -'Slovaquie' -] - -if region in cee_region_list: - if region == 'France': - location = region - else: - location = 'CEE' -else: - location = 'HCEE' - - -# TTC -amount_type='TTC' -compta_number = '4110000' -code_comptable = context.SaleInvoice_exportSageCodeComptableList(analytique, source_section_title, amount_type, location, compte_client) -is_invoice = '0' -#amount = '%s' % payable -amount = payable -file_content += mecg_text(invoice_date=invoice_date, datetime=datetime, invoice_number=invoice_number, compta_number=compta_number, code_comptable=code_comptable, corporate_name=corporate_name, due_date=due_date) -file_content += mecg_text_part2(is_invoice=is_invoice, amount=amount) - -# HT -amount_type='HT' -compta_number = context.SaleInvoice_exportSageCodeComptableList(analytique, source_section_title, amount_type, location, compte_client) -code_comptable = '' -is_invoice = '1' -#amount = '%s' % incomeHT -amount = incomeHT -file_content += mecg_text(invoice_date=invoice_date, datetime=datetime, invoice_number=invoice_number, compta_number=compta_number, code_comptable=code_comptable, corporate_name=corporate_name, due_date=due_date) -file_content += mecg_text_part2(is_invoice=is_invoice, amount=amount) -file_content += meca_text(amount=amount) - - - -# discount -discount_list_tmp = context.contentValues(filter={'portal_type':'Remise'}) -discount_list_tmp2 = filter(lambda x: x not in [None,0] ,discount_list_tmp) - -discount_list = filter(lambda x: x.getImmediateDiscount(), discount_list_tmp2 ) - -if len(discount_list) > 1: - discount_list.sort(lambda x,y: cmp(y.getIntIndex(),x.getIntIndex())) - -income_old = income -income_new = 0 -discount_total = 0 -did_we_have_another_discount = 0 - -for discount_line in discount_list: - if discount_line.getDiscountTypeTitle() == 'Escompte': - # escompte - amount_type='escompte' - compta_number = context.SaleInvoice_exportSageCodeComptableList(analytique, source_section_title, amount_type, location, compte_client) - code_comptable = '' - - income_new = income_old / (1 - discount_line.getDiscountRatio()) - discount_total += income_new - income_old - remise_price = income_new - income_old - - income_old = income_new - - - amount = remise_price - is_invoice = '0' - file_content += mecg_text(invoice_date=invoice_date, datetime=datetime, invoice_number=invoice_number, compta_number=compta_number, code_comptable=code_comptable, corporate_name=corporate_name, due_date=due_date) - file_content += mecg_text_part2(is_invoice=is_invoice, amount=amount) - file_content += meca_text(amount=amount) - else: - # all others discounts - did_we_have_another_discount = 1 - - income_new = income_old / (1 - discount_line.getDiscountRatio()) - discount_total += income_new - income_old - income_old = income_new - - -if did_we_have_another_discount: - amount_type='discount' - compta_number = context.SaleInvoice_exportSageCodeComptableList(analytique, source_section_title, amount_type, location, compte_client) - code_comptable = '' - - amount = discount_total - is_invoice = '0' - - file_content += mecg_text(invoice_date=invoice_date, datetime=datetime, invoice_number=invoice_number, compta_number=compta_number, code_comptable=code_comptable, corporate_name=corporate_name, due_date=due_date) - file_content += mecg_text_part2(is_invoice=is_invoice, amount=amount) - file_content += meca_text(amount=amount) - -# VAT -amount_type='tva' -compta_number = context.SaleInvoice_exportSageCodeComptableList(analytique, source_section_title, amount_type, location, compte_client) -code_comptable = '' -is_invoice = '1' -amount = vat -file_content += mecg_text(invoice_date=invoice_date, datetime=datetime, invoice_number=invoice_number, compta_number=compta_number, code_comptable=code_comptable, corporate_name=corporate_name, due_date=due_date) -file_content += mecg_text_part2(is_invoice=is_invoice, amount=amount) - - -# and this is the end .... -if batch_mode: - return file_content -else: - # add the header and the end of the file - file = '#FLG 000'+cr - file += '#VER 5'+cr - file += file_content - file += '#FIN' - - request.RESPONSE.setHeader('Content-Type','text/plain') - return file diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageCodeComptableList.py b/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageCodeComptableList.py deleted file mode 100755 index d78d95f13f9e14e2d351fd053135dfb13713c67c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageCodeComptableList.py +++ /dev/null @@ -1,98 +0,0 @@ -## Script (Python) "SaleInvoice_exportSageCodeComptableList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=analytique=None, source_section_title=None, amount_type=None, location=None, compte_client=None -##title= -## -# { analytique: { source_section_title:{ amount_type: { location: } } } } - -code_comptable_dict = { - -'VENTES': { - 'Coramy': { - 'TTC': { - 'CEE': compte_client, - 'HCEE': compte_client, - 'France': compte_client - }, - 'HT': { - 'France': '7011100', - 'CEE': '7011200', - 'HCEE': '7011300' - }, - 'discount': { - 'France': '7091100', - 'CEE': '7091200', - 'HCEE': '7091300' - }, - 'escompte': { - 'France': '6651000', - 'HCEE': '6652000', - 'CEE': '6653000' - }, - 'tva': { - 'CEE': '4457102', - 'HCEE': '4457102', - 'France': '4457102' - }, - }, - 'BLS': { - 'TTC': { - 'CEE':compte_client, - 'HCEE':compte_client, - 'France':compte_client - }, - 'HT': { - 'France': '7071000', - 'CEE': '7071200', - 'HCEE': '7071300' - }, - 'discount': { - 'France': '7097000', - 'CEE': '7097200', - 'HCEE': '7097300' - }, - 'escompte': { - 'France': '6651000', - 'HCEE': '6652000', - 'CEE': '6653000' - }, - 'tva': { - 'CEE': '4457102', - 'HCEE': '4457102', - 'France': '4457102' - }, - }, - 'Houvenaegel': { - 'TTC': { - 'CEE': compte_client, - 'HCEE': compte_client, - 'France': compte_client - }, - 'HT': { - 'France': '7071000', - 'CEE': '7071200', - 'HCEE': '7071300' - }, - 'discount': { - 'France': '7097000', - 'CEE': '7097200', - 'HCEE': '7097300' - }, - 'escompte': { - 'France': '6651000', - 'HCEE': '6652000', - 'CEE': '6653000' - }, - 'tva': { - 'CEE': '4457102', - 'HCEE': '4457102', - 'France': '4457102' - }, - }, -}} - -return code_comptable_dict[analytique][source_section_title][amount_type][location] diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageList.py b/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageList.py deleted file mode 100755 index 5ef1827868b3ddb0e8a54f47ee82e2236f376ce3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_exportSageList.py +++ /dev/null @@ -1,32 +0,0 @@ -## Script (Python) "SaleInvoice_exportSageList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -# generate a export file from a Sale Invoice list for the Sage software - -request = context.REQUEST -cr='\r' -# add the header of the file -file = '#FLG 000'+cr -file += '#VER 5'+cr - -object_list = context.object_action_list(selection_name='order_selection') - -for invoice in object_list: - try: - file += invoice.SaleInvoice_exportSage(batch_mode=1,cr=cr) - except: - message='Erreur+sur+la+facture:+identifiant+%s+numero+%s.' % (invoice.getId(),invoice.getReference()) - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - -# add the end of the file -file += '#FIN' - -request.RESPONSE.setHeader('Content-Type','text/plain') -return file diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdf.py b/product/Coramy/skins/coramy_trade/SaleInvoice_printPdf.py deleted file mode 100755 index db5056b8d62351e4f30322a12dca00808c25ff10..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdf.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "SaleInvoice_printPdf" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=user_name='rc',printer='Xerox_DC_440',selection_name=None,render_id=None,template_id=None,number_copies=1,**kw -##title= -## -# generate a pdf file from the sale invoice - -invoice = context -invoice_description = "Identifiant facture "+invoice.getId() - -try: - # generate the pdf - pdf = invoice.Invoice_print_romain(batch_mode=1) -except: - context.Coramy_sendMailToUser(user_name=user_name,mSubj="Génération d un pdf échouée",mMsg=invoice_description) -else: - try: - # Send it to a printer. - invoice.sendRawToCups(printer, pdf, number_copies=number_copies) - except: - context.Coramy_sendMailToUser(user_name=user_name,mSubj="Impression d une facture vente échouée",mMsg=invoice_description) diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfList.py b/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfList.py deleted file mode 100755 index 429266bcf1f83708098b8e45f75734d8d368d68e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfList.py +++ /dev/null @@ -1,24 +0,0 @@ -## Script (Python) "SaleInvoice_printPdfList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=printer='Xerox_DC_440',selection_name=None,render_id=None,template_id=None,number_copies=1,**kw -##title= -## -# generate a pdf file from the sale invoice list - -request = context.REQUEST - -object_list = context.object_action_list(selection_name=selection_name) -# sort invoice's references -object_list.sort(lambda x,y: cmp(int(x.getReference('0')),int(y.getReference('0')))); - -user_name = context.portal_membership.getAuthenticatedMember().getUserName() - -for invoice in object_list: - invoice.activate(activity="SQLQueue").SaleInvoice_printPdf(user_name=user_name,printer=printer,selection_name=selection_name,render_id=render_id,template_id=template_id, number_copies=number_copies) - -redirect_url = '%s?%s' % ( context.absolute_url(), 'portal_status_message=Impression+lancée.') -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfListForm.form b/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfListForm.form deleted file mode 100755 index ca6ca560e5bee8b0e14b3defdd9a5d6e4ba4ae81..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_printPdfListForm.form +++ /dev/null @@ -1,146 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Confirmer l'impression</title> - <name>SaleInvoice_printPdfListForm</name> - <action>SaleInvoice_printPdfList</action> - <enctype></enctype> - <method>POST</method> - <pt>form_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_number_copies</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <end type="int">5</end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start type="int">0</start> - <title>Nombre d'exemplaires</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_selection_name</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>order_selection</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_printer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>Xerox_DC_440</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_render_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_template_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SaleInvoice_updateTransaction.py b/product/Coramy/skins/coramy_trade/SaleInvoice_updateTransaction.py deleted file mode 100755 index 802f02ce88c1f2ab10b2760608c99540aed50978..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SaleInvoice_updateTransaction.py +++ /dev/null @@ -1,65 +0,0 @@ -## Script (Python) "SaleInvoice_updateTransaction" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -# Create invoice lines -global total_price -global total_vat -global total_discount -total_price = 0.0 -total_vat = 0.0 -total_discount = 0.0 -invoice = context - -def updateTotal(l): - global total_price - global total_vat - global total_discount - if l.getPrice() in ('', None): - return 'Price is not defined for %s %s' % (l.getResource(), l.getVariationText()) - elif l.getQuantity(): - price = l.getPrice() * l.getQuantity() - total_price += price - if l.getValueAddedTaxRatio() and l.getValueAddedTaxRecoverable(): - total_vat += price * l.getValueAddedTaxRatio() - return None - -for l in context.contentValues(filter={'portal_type':"Invoice Line"}): - if l.hasCellContent(): - for c in l.contentValues(filter={'portal_type':"Invoice Cell"}): - error_message = updateTotal(c) - if error_message is not None: - return error_message - else: - error_message = updateTotal(l) - if error_message is not None: - return error_message - -# Generate accounting lines -# Income Line -if not invoice.hasObject('income'): - income = invoice.newContent(portal_type="Sale Invoice Transaction Line", id='income') -else: - income = context.income -income.edit(source='account/vente', destination='account/achat', - source_credit=total_price) -# Payable Line -if not invoice.hasObject('payable'): - payable = invoice.newContent(portal_type="Sale Invoice Transaction Line", id='payable') -else: - payable = context.payable -payable.edit(source='account/creance_client', destination='dette_fournisseur', - source_debit=total_price + total_vat) - -# VAT Line -if not invoice.hasObject('vat'): - vat = invoice.newContent(portal_type="Sale Invoice Transaction Line", id='vat') -else: - vat = context.vat -vat.edit(source='account/tva_collectee_196', destination='account/tva_recuperable_196', - source_credit=total_vat) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_confirmList.py b/product/Coramy/skins/coramy_trade/SalesOrder_confirmList.py deleted file mode 100755 index 0804d84d2ee14b792ae2c238704def8165bbdca1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_confirmList.py +++ /dev/null @@ -1,77 +0,0 @@ -## Script (Python) "SalesOrder_confirmList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=start_date=None, stop_date=None,batch_mode=0,**kw -##title= -## -# confirm the selection of Sales Order -request = context.REQUEST - -object_list = context.object_action_list(selection_name='sales_order_selection') - -confirmed_order_number = 0 -confirmed_order_list = ' ' - -not_confirmed_order_number = 0 -not_confirmed_order_list = ' ' - -uid_list = [] - -for order in object_list: - - simulation_state = order.getSimulationState() - if (simulation_state == 'planned' or simulation_state == 'ordered'): - - error_message = order.Order_heavyControl() - if error_message == '': - - # we give local_roles to the users - user_name = '' - user_name = order.getSourceAdministrationTitle().replace(' ','_') - order.assign_gestionaire_designe_roles(user_name = user_name) - - if start_date != None: - order.setStartDate(start_date) - if stop_date != None: - order.setStopDate(stop_date) - - - - # set the transition_state to 'confirmed' - order.confirm() - - #order.flushActivity(invoke=1) - - confirmed_order_number += 1 - confirmed_order_list += order.getId()+' ' - else: - not_confirmed_order_number += 1 - not_confirmed_order_list += order.getId()+' ' - - uid_list.append(order.getUid()) - - elif (simulation_state == 'draft'): - not_confirmed_order_number += 1 - not_confirmed_order_list += order.getId()+' ' - - uid_list.append(order.getUid()) - - -# and this is the end .... -if batch_mode: - return None -else: - """ - redirect_url = '%s?%s%i%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=',not_confirmed_order_number,'+Commandes+ventes+non+confirmées:'+not_confirmed_order_list+'\n') - request[ 'RESPONSE' ].redirect( redirect_url ) - """ - if not_confirmed_order_number == 0: - redirect_url = '%s?%s%i%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=',confirmed_order_number,'+Commandes+ventes+confirmées.') - else: - context.portal_selections.setSelectionToIds('sales_order_selection', uid_list, REQUEST=request) - redirect_url = '%s?%s%i%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=',not_confirmed_order_number,'+Commandes+ventes+non+confirmées.') - - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_confirmListForm.form b/product/Coramy/skins/coramy_trade/SalesOrder_confirmListForm.form deleted file mode 100755 index 9fc5687d4935a38dd93eac0d608da60714605d19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_confirmListForm.form +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Confirmer les commandes</title> - <row_length>4</row_length> - <name>SalesOrder_confirmListForm</name> - <pt>form_view_dialog</pt> - <action>SalesOrder_confirmList</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_countEdiSales.py b/product/Coramy/skins/coramy_trade/SalesOrder_countEdiSales.py deleted file mode 100755 index 5bc5206ea0d210daa80a299a8a7d1f3ff38be6df..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_countEdiSales.py +++ /dev/null @@ -1,31 +0,0 @@ -## Script (Python) "SalesOrder_countEdiSales" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=**kw -##title= -## -# Count the number of EDI sales order - -number = 0 -number_object = 0 -number_sales_order = 0 - -object_list = context.object_action_list(selection_name='sales_order_selection') -for object in object_list: - number_object += 1 - if object.getPortalType() == 'Sales Order': - number_sales_order += 1 - print ':', - print object.getCommandeOrigine(), - if (object.getCommandeOrigine() == 'EDI'): - number += 1 - print object.getId() - -print '\n Total Commandes EDI: %i \n' % number -print '\n Total Commandes : %i \n' % number_object -print '\n Total Commandes Sales: %i \n' % number_sales_order - -return printed diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_importEdi.py b/product/Coramy/skins/coramy_trade/SalesOrder_importEdi.py deleted file mode 100755 index 784d2eac3d4100291a4fc33d9f0925d2cef784db..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_importEdi.py +++ /dev/null @@ -1,289 +0,0 @@ -## Script (Python) "SalesOrder_importEdi" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=import_file, segmentation_strategique='2003-2004', incoterm='DAF',delivery_mode='Transporteur', order_type='Approvisionnement', travel_duration=0, batch_mode=0,user_name='',**kw -##title= -## -# import d'un fichier EDI -# format de fichier attendu -# Traduction .rec du fichier Edifact par NY Net - - - -from DateTime import DateTime - - -# link between NYNet alias table and python import script -edi_import_script_dict = { - # 'NYNet alias table name' : import script - 'CAR-ORD':context.SalesOrder_importEdiCarrefour, - 'ORDAUCHAAUCHAN':context.SalesOrder_importEdiAuchan, - 'ORDAUCHA':context.SalesOrder_importEdiAuchan -} - - -try: - # read the NY Net file - file_line_list = import_file.readlines() - - alias_table_name = string.split(file_line_list[0].split(':',1)[1])[0] - import_script = edi_import_script_dict[alias_table_name] -except: - #return None - return (None,None) - - - -def setLog(item, comment): - item_comment = item.getComment() - if item.comment != None: - item.setComment(item_comment + comment) - else: - item.setComment(comment) - -# create a new sales order -item_module = context.getPortalObject().commande_vente -my_id = str(context.getObject().generateNewId()) - -context.portal_types.constructContent( - type_name = 'Sales Order', - container = item_module, - id = my_id, - date_reception = DateTime() -) - -sales_order = item_module[my_id] - - - -# set some fields -sales_order.setCommandeOrigine('EDI') -#sales_order.setComment('Commentaires générés par l import EDI du fichier: \n') -setLog(sales_order ,'Commentaires générés par l import EDI du fichier ' + import_file.filename + ' :\n') -setLog(sales_order ,'Sales Order ID: ' + my_id + '\n') - -sales_order.setSegmentationStrategique(segmentation_strategique) -sales_order.setDeliveryMode(delivery_mode) -sales_order.setIncoterm(incoterm) -sales_order.setOrderType(order_type) - - -# set the source administration -#local_user = container.portal_membership.getAuthenticatedMember() -#local_user_name = string.replace(local_user.getUserName(), '_', ' ') -local_user_name = string.replace(user_name, '_', ' ') -local_persons = sales_order.item_by_title_sql_search(title = local_user_name, portal_type = 'Person') -if len(local_persons) > 0: - sales_order.setSourceAdministration(local_persons[0].relative_url) - - -# some useful functions ... -def link_with_organisation(code_ean13, link_function, portal_type_name): - result = context.item_by_ean13_code_sql_search(organisation_ean = code_ean13, portal_type = portal_type_name) - try: - if len(result) == 1: - link_function( result[0].relative_url ) - - else: - raise IndexError - except IndexError: - setLog(sales_order, 'Erreur sur le code EAN d une societe:\n\tCode EAN: ' + code_ean13 + '\n') - -def link_with_organisation_group(code_ean13, link_function, portal_type_name): - result = context.item_by_ean13_code_sql_search(organisation_ean = code_ean13, portal_type = portal_type_name) - try: - if len(result) == 1: - link_function( 'group/'+result[0].getObject().getGroup() ) - - else: - raise IndexError - except IndexError: - setLog(sales_order, 'Erreur sur le code EAN d un groupe:\n\tCode EAN: ' + code_ean13 + '\n') - - -def modele_search(code_ean13): - result = context.item_by_ean13_code_sql_search(organisation_ean = code_ean13, portal_type = 'Set Mapped Value') - try: - if len(result) == 1: - result_object = result[0].getObject() - else: - raise IndexError - except IndexError: - result_object = None - else: - return result_object - -# dictionnary of those functions, in order to give them to the import script -useful_functions = { - 'modele_search':modele_search, - 'link_with_organisation':link_with_organisation, - 'link_with_organisation_group':link_with_organisation_group -} - - - -request = context.REQUEST - -# item of products_list: tuple (product_ean13_code, [[quantity, price], ...]) -products_list = [] - -# read each line of the file -for file_line in file_line_list : - # save the line in the comment - #item_module[my_id].setComment(sales_order.getComment()+file_line) - # get the line header - sub_line_list = file_line.split(':',1) - line_header = sub_line_list[0] - # separate the arguments - line_item_list = string.split(sub_line_list[1]) - # call the adequat function - try: - import_script(line_header, line_item_list, sales_order, products_list , useful_functions) - except KeyError: - #sales_order.setComment(sales_order.getComment() + 'Erreur sur la lecture d une ligne:\n\t' + file_line ) - setLog(sales_order, 'Erreur sur la lecture d une ligne:\n\t' + file_line ) - - -# create a dictionary of the desired resource -# { modele_relative_url : [ ( [ predicate_value_list ] , quantity , price ), (...), ...] , ...} -desired_lines = {} -for product in products_list: - try: - # must be a 'Set Mapped Value' - product_item = modele_search(product[0]).getObject() - except: - setLog(sales_order, 'Erreur sur un modèle ! \n\tCode EAN: ' + product[0] + '\n') - else: - # parent: must be a 'Variated Reference' - father_uid = product_item.getParentUid() - father_obj = context.portal_catalog.getObject(father_uid) - - # grand parent: must be a 'Modele' - grand_father_uid = father_obj.getParentUid() - grand_father_obj = context.portal_catalog.getObject(grand_father_uid) - - grand_father_url = grand_father_obj.getRelativeUrl() - - # calculate the number of piece - total_quantity = 0 - price = '0' - for qty in product[1]: - price = qty[1] - total_quantity += string.atoi( qty[0] ) - - total_quantity = "%i" % total_quantity - - - if grand_father_url in desired_lines.keys(): - - # test if the predicateValueList exists - predicate_value_list = product_item.getPredicateValueList() - trouve = 0 - for tuple in desired_lines[ grand_father_url ]: - if predicate_value_list == tuple[0]: - setLog(sales_order, 'Erreur sur un modèle: 2 codes EAN represente le meme modele: \n\t ' + grand_father_url + ' ' ) - - for predicate_value in predicate_value_list: - setLog(sales_order, predicate_value + ' ' ) - - setLog(sales_order, '\n' ) - trouve = 1 - - if trouve == 0: - # predicate_value_list : variante de la SetMappedValue - desired_lines[ grand_father_url ].append((product_item.getPredicateValueList(), total_quantity , price)) - - else: - desired_lines[ grand_father_url ] = [ ((product_item.getPredicateValueList(), total_quantity , price )) ] - - -for modele_relative_url in desired_lines.keys(): - - - # compute variation_base_category_list and variation_category_list for this line - line_variation_base_category_dict = {} - line_variation_category_list = [] - - for my_tuple in desired_lines[ modele_relative_url ] : - - for variation_item in my_tuple[0] : - - if not variation_item in line_variation_category_list : - line_variation_category_list.append(variation_item) - variation_base_category_items = variation_item.split('/') - if len(variation_base_category_items) > 0 : - line_variation_base_category_dict[variation_base_category_items[0]] = 1 - - line_variation_base_category_list = line_variation_base_category_dict.keys() - - - - # construct new sales order lines - sales_order_line_id = str(sales_order.generateNewId()) - - # sur le folder, newContent - sales_order_line = sales_order.newContent( - portal_type = "Sales Order Line", - resource = modele_relative_url, - id = sales_order_line_id, - comment = '' - ) - - sales_order_line.setResource(modele_relative_url) - sales_order_line.setVariationBaseCategoryList(line_variation_base_category_list) - sales_order_line.setVariationCategoryList(line_variation_category_list) - - #sales_order_line_cell_list = sales_order_line.contentValues() - sales_order_line_cell_list = sales_order_line.objectValues() - - for my_tuple in desired_lines[ modele_relative_url ] : - quantity_updated = 0 - - for sales_order_line_cell in sales_order_line_cell_list : - if sales_order_line_cell.test(context.asContext(categories=my_tuple[0])): - sales_order_line_cell.setTargetQuantity(my_tuple[1]) - sales_order_line_cell.setPrice(my_tuple[2]) - sales_order_line_cell.flushActivity(invoke=1) - quantity_updated = 1 - break - # if no cell according to variation_category_list was found - # or no variation at all, we update the container_line - if not quantity_updated : - sales_order_line.setTargetQuantity(my_tuple[1]) - sales_order_line.flushActivity(invoke=1) - - - - -# set the target start date -if sales_order.getTargetStartDate() == None: - try: - sales_order.setTargetStartDate( sales_order.getTargetStopDate() - travel_duration ) - except TypeError: - None - -setLog(sales_order, 'Fin des commentaires générés par l import EDI.\n') - -sales_order.flushActivity(invoke=1) - - - -# try to apply a sale condition -sales_order.sales_order_apply_condition(my_id, 1) - -# change the workflow to create the sales packing list -# give the role to user -sales_order.Item_doWorkflowTransition(workflow_action='user_order', workflow_id='order_workflow') -#sales_order.flushActivity(invoke=1) -sales_order.Item_doWorkflowTransition(workflow_action='user_confirm', workflow_id='order_workflow') - -# and this is the end .... -if batch_mode: - #return sales_order.getComment() - return (sales_order.getId(),sales_order.getComment()) -else: - redirect_url = '%s?%s' % ( item_module.absolute_url()+'/'+my_id+'/'+'view', 'portal_status_message=Commande+Vente+créée.') - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiAuchan.py b/product/Coramy/skins/coramy_trade/SalesOrder_importEdiAuchan.py deleted file mode 100755 index 5c9d23092144ecc56e974a471c10484ede75e045..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiAuchan.py +++ /dev/null @@ -1,145 +0,0 @@ -## Script (Python) "SalesOrder_importEdiAuchan" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=line_header, argument, item_sales_order, products_list, useful_functions, **kw -##title= -## -# import d'un fichier EDI Auchan -# format de fichier attendu -# Traduction .rec du fichier Edifact par NY Net - -def read_START(argument, item_sales_order, products_list ): - item_sales_order.setGroup('Auchan International/Auchan France') - """ - # recuperation du client et du destinataire - functions = ( - (argument[2], item_sales_order.setSourceSection), - (argument[3], item_sales_order.setDestinationDecision) - ) - for tuple in functions: - useful_functions['link_with_organisation'](tuple[0], tuple[1], 'Organisation') - """ - -def read_ALC_DEDUCTION_FRAIS(argument, item_sales_order, products_list ): - None - -def read_BGM_TYPE_DOCUMENT(argument, item_sales_order, products_list ): - # nothing interesting to get - None - -def read_BGM_NUMERO_DOCUMENT(argument, item_sales_order, products_list ): - item_sales_order.setDestinationReference(argument[0]) - -def read_CNT_TOTAL_CONTROLE(argument, item_sales_order, products_list ): - None -def read_CUX_MONNAIE(argument, item_sales_order, products_list ): - # nothing interesting to get - item_sales_order.setPriceCurrency('devise/'+'EUR') - None - -def read_DTM_DATE_COMMANDE(argument, item_sales_order, products_list ): - # nothing interesting to get - None -def read_DTM_DATE_DEPART(argument, item_sales_order, products_list ): - date = argument[1][:4] + '/' + argument[1][4:6] + '/' + argument[1][6:8] - item_sales_order.setTargetStopDate(date) - -def read_DTM_DATE_LIVRAISON(argument, item_sales_order, products_list ): - date = argument[1][:4] + '/' + argument[1][4:6] + '/' + argument[1][6:8] - item_sales_order.setTargetStopDate(date) - -def read_DTM_DATE_REFERENCE(argument, item_sales_order, products_list ): - None - -def read_LIN_ARTICLE(argument, item_sales_order, products_list ): - # get ean13 code - products_list.append( (argument[0], []) ) - - -def read_LOC_EMPLACEMENT(argument, item_sales_order, products_list ): - None -def read_MEA_MESURES(argument, item_sales_order, products_list ): - None -def read_MOA_MONTANT_REMISE(argument, item_sales_order, products_list ): - None -def read_NAD_ACHETEUR(argument, item_sales_order, products_list ): - #useful_functions['link_with_organisation'](argument[0], item_sales_order.setDestinationPayment , 'Organisation') - useful_functions['link_with_organisation'](argument[0], item_sales_order.setDestinationDecision, 'Organisation') - -def read_NAD_FOURNISSEUR(argument, item_sales_order, products_list ): - #useful_functions['link_with_organisationGroup'](argument[0], item_sales_order.setSourceSection, 'Organisation') - useful_functions['link_with_organisation_group'](argument[0], item_sales_order.setSourceSection, 'Organisation') - -def read_NAD_LIEU_LIVRAISON(argument, item_sales_order, products_list ): - # code EAN inconnu de Coramy, solution temporaire ... - item_sales_order.setDestination(item_sales_order.getDestinationDecision()) - - #useful_functions['link_with_organisation'](argument[0], item_sales_order.setDestination, 'Organisation') - -def read_PAC_EMBALLAGE(argument, item_sales_order, products_list ): - None -def read_PCD_POURCENTAGE(argument, item_sales_order, products_list ): - None -def read_PIA_COMPLEMENT_PRODUI(argument, item_sales_order, products_list ): - None -def read_PRI_PRIX_UNIT_NET(argument, item_sales_order, products_list ): - list_tuple = products_list[ len(products_list) - 1 ][1] - list_tuple[ len(list_tuple) - 1 ][1] = argument[0] - -def read_QTY_PAR_COMBIEN(argument, item_sales_order, products_list ): - None -def read_QTY_QUANTITE_CDE(argument, item_sales_order, products_list ): - #products_list[ len(products_list) - 1 ][1].append( (argument[0],) ) - products_list[ len(products_list) - 1 ][1].append( [argument[0],None] ) - -def read_QTY_QUANTITE_GRATUITE(argument, item_sales_order, products_list ): - None -def read_RFF_REFERENCE_OPERATI(argument, item_sales_order, products_list ): - None -def read_TDT_TRANSPORT(argument, item_sales_order, products_list ): - None -def read_TOD_CONDITION_LIVRAIS(argument, item_sales_order, products_list ): - None -def read_UNH_ENTETE_COMMANDE(argument, item_sales_order, products_list ): - # nothing interesting to get - None -def read_UNS_SECTION_MESSAGE(argument, item_sales_order, products_list ): - None - -# dictionary of the functions -functions_list = { - 'START':read_START, - 'ALC_DEDUCTION_FRAIS__':read_ALC_DEDUCTION_FRAIS, - 'BGM_TYPE_DOCUMENT____':read_BGM_TYPE_DOCUMENT, - 'BGM_NUMERO_DOCUMENT__':read_BGM_NUMERO_DOCUMENT, - 'CNT_TOTAL_CONTROLE___':read_CNT_TOTAL_CONTROLE, - 'CUX_MONNAIE__________':read_CUX_MONNAIE, - 'DTM_DATE_COMMANDE____':read_DTM_DATE_COMMANDE, - 'DTM_DATE_DEPART______':read_DTM_DATE_DEPART, - 'DTM_DATE_LIVRAISON___':read_DTM_DATE_LIVRAISON, - 'DTM_DATE_REFERENCE___':read_DTM_DATE_REFERENCE, - 'LIN_ARTICLE__________':read_LIN_ARTICLE, - 'LOC_EMPLACEMENT______':read_LOC_EMPLACEMENT, - 'MEA_MESURES__________':read_MEA_MESURES, - 'MOA_MONTANT_REMISE___':read_MOA_MONTANT_REMISE, - 'NAD_ACHETEUR_________':read_NAD_ACHETEUR, - 'NAD_FOURNISSEUR______':read_NAD_FOURNISSEUR, - 'NAD_LIEU_LIVRAISON___':read_NAD_LIEU_LIVRAISON, - 'PAC_EMBALLAGE________':read_PAC_EMBALLAGE, - 'PCD_POURCENTAGE______':read_PCD_POURCENTAGE, - 'PIA_COMPLEMENT_PRODUI':read_PIA_COMPLEMENT_PRODUI, - 'PRI_PRIX_UNIT_NET____':read_PRI_PRIX_UNIT_NET, - 'QTY_PAR_COMBIEN______':read_QTY_PAR_COMBIEN, - 'QTY_QUANTITE_CDE_____':read_QTY_QUANTITE_CDE, - 'QTY_QUANTITE_GRATUITE':read_QTY_QUANTITE_GRATUITE, - 'RFF_REFERENCE_OPERATI':read_RFF_REFERENCE_OPERATI, - 'TDT_TRANSPORT________':read_TDT_TRANSPORT, - 'TOD_CONDITION_LIVRAIS':read_TOD_CONDITION_LIVRAIS, - 'UNH_ENTETE_COMMANDE__':read_UNH_ENTETE_COMMANDE, - 'UNS_SECTION_MESSAGE__':read_UNS_SECTION_MESSAGE -} -# execute a function -functions_list[line_header](argument, item_sales_order, products_list ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiCarrefour.py b/product/Coramy/skins/coramy_trade/SalesOrder_importEdiCarrefour.py deleted file mode 100755 index b4462556ce0cef57ed9cf01824fe1c7d07648502..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiCarrefour.py +++ /dev/null @@ -1,112 +0,0 @@ -## Script (Python) "SalesOrder_importEdiCarrefour" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=line_header, argument, item_sales_order, products_list, useful_functions, **kw -##title= -## -# import d'un fichier EDI Carrefour -# format de fichier attendu -# Traduction .rec du fichier Edifact par NY Net - - -def read_START(argument, item_sales_order, products_list ): - item_sales_order.setGroup('Carrefour International/Carrefour France') - # recuperation du client et du destinataire - functions = ( - (argument[2], item_sales_order.setSourceSection), - (argument[3], item_sales_order.setDestinationDecision) - ) - - for tuple in functions: - useful_functions['link_with_organisation'](tuple[0], tuple[1], 'Organisation') - - - -def read_UNH(argument, item_sales_order, products_list ): - None - -def read_BGM(argument, item_sales_order, products_list ): - item_sales_order.setDestinationReference(argument[1]) - - - - -def read_DTM(argument, item_sales_order, products_list ): - date = argument[1][:4] + '/' + argument[1][4:6] + '/' + argument[1][6:8] - - case = { - '2':item_sales_order.setTargetStopDate, - # date livraison demandee - '137':None, - # date du document - '200':None - # date enlevement cargaison - } - if case[argument[0]] != None: - case[argument[0]](date) - -def read_NAD(argument, item_sales_order, products_list ): - case = { - #'BY':item_sales_order.setDestinationPayment , - 'BY':item_sales_order.setDestinationDecision, - # acheteur - 'SU':item_sales_order.setSourceSection , - # fournisseur - # source_section - 'DP':item_sales_order.setDestination - # intervenant a livrer - # destination - } - - useful_functions['link_with_organisation'](argument[1], case[argument[0]], 'Organisation') - - -def read_CUX(argument, item_sales_order, products_list ): - if argument[2] == '9': - item_sales_order.setPriceCurrency('devise/'+argument[1]) - -def read_TDT(argument, item_sales_order, products_list ): - #item_sales_order.setDeliveryMode(.....) - # nothing interesting to get - None - -def read_LIN(argument, item_sales_order, products_list ): - # get ean13 code - products_list.append( (argument[0], []) ) - None - -def read_IMD(argument, item_sales_order, products_list ): - # nothing interesting to get - None - -def read_QTY(argument, item_sales_order, products_list ): - products_list[ len(products_list) - 1 ][1].append( [argument[1], None] ) - -def read_PRI(argument, item_sales_order, products_list ): - list_tuple = products_list[ len(products_list) - 1 ][1] - list_tuple[ len(list_tuple) - 1 ][1] = argument[0] - -def read_UNS(argument, item_sales_order, products_list ): - None - -# dictionary of the functions -functions_list = { - 'START':read_START, - 'UNH':read_UNH, - 'BGM':read_BGM, - 'DTM':read_DTM, - 'NAD':read_NAD, - 'CUX':read_CUX, - 'TDT':read_TDT, - 'LIN':read_LIN, - 'IMD':read_IMD, - 'QTY':read_QTY, - 'PRI':read_PRI, - 'UNS':read_UNS -} - -# execute a function -functions_list[line_header](argument, item_sales_order, products_list ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiFileList.py b/product/Coramy/skins/coramy_trade/SalesOrder_importEdiFileList.py deleted file mode 100755 index d13ced5680ef0d8cfa4f849312b3d3ecb289acbc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiFileList.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "SalesOrder_importEdiFileList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=file_path=None, delivery_mode=None, incoterm=None, order_type=None, segmentation_strategique=None, travel_duration=None, batch_mode=0 -##title= -## -user_name = context.portal_membership.getAuthenticatedMember().getUserName() - -request = context.REQUEST - - -context.activate(activity="SQLQueue").SalesOrder_importEdiFileListTestAndStart(delivery_mode=delivery_mode, incoterm=incoterm, order_type=order_type, segmentation_strategique=segmentation_strategique, travel_duration=travel_duration, user_name=user_name ) - -redirect_url = '%s?%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=Import+des+fichiers+EDI+lancé.') - -if batch_mode: - return None -else: - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiForm.form b/product/Coramy/skins/coramy_trade/SalesOrder_importEdiForm.form deleted file mode 100755 index 6cf26b0f901ef5b24fc7792fb15c67a223055c48..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_importEdiForm.form +++ /dev/null @@ -1,209 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Importer</title> - <row_length>4</row_length> - <name>SalesOrder_importEdiForm</name> - <pt>form_dialog</pt> - <action>SalesOrder_importEdiFileList</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_expression></editable_expression> - <editable_permission></editable_permission> - <editable_role></editable_role> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <not_viewable type="int">0</not_viewable> - <read_only type="int">0</read_only> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <viewable_expression></viewable_expression> - <viewable_permission></viewable_permission> - <viewable_role></viewable_role> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_categories.delivery_mode.getFormItemList()[1][1]</default> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_expression></editable_expression> - <editable_permission></editable_permission> - <editable_role></editable_role> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <not_viewable type="int">0</not_viewable> - <read_only type="int">0</read_only> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <viewable_expression></viewable_expression> - <viewable_permission></viewable_permission> - <viewable_role></viewable_role> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)[1][1]</default> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_order_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_expression></editable_expression> - <editable_permission></editable_permission> - <editable_role></editable_role> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <not_viewable type="int">0</not_viewable> - <read_only type="int">0</read_only> - <required type="int">0</required> - <size type="int">1</size> - <title>Type de commande</title> - <unicode type="int">0</unicode> - <viewable_expression></viewable_expression> - <viewable_permission></viewable_permission> - <viewable_role></viewable_role> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_categories.order_type.getFormItemList()[1][1]</default> - <items>here/portal_categories/order_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_segmentation_strategique</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_expression></editable_expression> - <editable_permission></editable_permission> - <editable_role></editable_role> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <not_viewable type="int">0</not_viewable> - <read_only type="int">0</read_only> - <required type="int">0</required> - <size type="int">1</size> - <title>Segmentation</title> - <unicode type="int">0</unicode> - <viewable_expression></viewable_expression> - <viewable_permission></viewable_permission> - <viewable_role></viewable_role> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_categories.segmentation_strategique.getFormItemList()[1][1]</default> - <items>here/portal_categories/segmentation_strategique/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_travel_duration</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Durée de l'expédition (jours)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python: 0</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_orderList.py b/product/Coramy/skins/coramy_trade/SalesOrder_orderList.py deleted file mode 100755 index ea998f0b7420bdcac3f14f47f704c4b30a6f1075..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_orderList.py +++ /dev/null @@ -1,70 +0,0 @@ -## Script (Python) "SalesOrder_orderList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=batch_mode=0,**kw -##title= -## -# order the selection of Sales Order -request = context.REQUEST - -object_list = context.object_action_list(selection_name='sales_order_selection') - -ordered_order_number = 0 -ordered_order_list = ' ' - -not_ordered_order_number = 0 -not_ordered_order_list = ' ' - -uid_list = [] - -for order in object_list: - - simulation_state = order.getSimulationState() - if (simulation_state == 'planned' or simulation_state == 'draft'): - - error_message = order.Order_lightControl() - if error_message == '': - - # we give local_roles to the users - user_name = '' - user_name = order.getSourceAdministrationTitle().replace(' ','_') - order.assign_gestionaire_designe_roles(user_name = user_name) - - - # set the transition_state to 'ordered' - order.order() - - #order.flushActivity(invoke=1) - - ordered_order_number += 1 - ordered_order_list += order.getId()+' ' - - else: - not_ordered_order_number += 1 - not_ordered_order_list += order.getId()+' ' - - uid_list.append(order.getUid()) - - else: - """ - not_ordered_order_number += 1 - not_ordered_order_list += order.getId()+' ' - - uid_list.append(order.getUid()) - """ - None - -# and this is the end .... -if batch_mode: - return None -else: - if not_ordered_order_number == 0: - redirect_url = '%s?%s%i%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=',ordered_order_number,'+Commandes+ventes+validées.') - else: - context.portal_selections.setSelectionToIds('sales_order_selection', uid_list, REQUEST=request) - redirect_url = '%s?%s%i%s' % ( context.absolute_url()+'/'+'view', 'portal_status_message=',not_ordered_order_number,'+Commandes+ventes+non+validées.') - - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_reportByClient.py b/product/Coramy/skins/coramy_trade/SalesOrder_reportByClient.py deleted file mode 100755 index 0ab70e0c23e5f63d407b214115a20ef93069f4ce..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_reportByClient.py +++ /dev/null @@ -1,38 +0,0 @@ -## Script (Python) "SalesOrder_reportByClient" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=source_section -##title= -## -request = context.REQUEST -cr = '\r' -tab = '\t' -report = 'Client' + 5*tab + 'Quantite' + tab + 'Prix total' + cr - -source_section_item_list = source_section.split('.') -source_section_object = context.portal_categories.group -for source_item in source_section_item_list : - source_section_object = source_section_object[source_item] - -report_list = context.SalesOrder_zReportByClient(source_section_uid=source_section_object.getUid()) - -for report_item in report_list : - if report_item.client is None : - report += '' + 5*tab - else : - client_item_list = report_item.client.split('/') - compteur = 0 - for client_item in client_item_list : - report += client_item + tab - compteur +=1 - for i in range(5-compteur) : - report += tab - report += str(report_item.quantity).replace('.',',') + tab - report += str(report_item.total_price).replace('.',',') + cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return report diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_reportByClientForm.form b/product/Coramy/skins/coramy_trade/SalesOrder_reportByClientForm.form deleted file mode 100755 index 9e5b59fb7020d2b57fc429d46258cc72b6a61282..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_reportByClientForm.form +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Exporter</title> - <name>SalesOrder_reportByResourceForm</name> - <action>SalesOrder_reportByClient</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_source_section</id> <type>RadioField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <first_item type="int">1</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Coramy', 'Coramy'), ('BLS', 'Coramy.BLS'), ('Houvenaegel', 'Coramy.Houvenaegel')]</items> - <orientation>vertical</orientation> - <required type="int">1</required> - <title>Société</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_reportByResource.py b/product/Coramy/skins/coramy_trade/SalesOrder_reportByResource.py deleted file mode 100755 index a3f5a3081cc02e5ae6568923b270c34926ea6854..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_reportByResource.py +++ /dev/null @@ -1,29 +0,0 @@ -## Script (Python) "SalesOrder_reportByResource" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=source_section -##title= -## -request = context.REQUEST -cr = '\r' -tab = '\t' -report = 'Produit' + tab + 'Quantite' + tab + 'Prix total' + cr - -source_section_item_list = source_section.split('.') -source_section_object = context.portal_categories.group -for source_item in source_section_item_list : - source_section_object = source_section_object[source_item] - -report_list = context.SalesOrder_zReportByResource(source_section_uid=source_section_object.getUid()) - -for report_item in report_list : - report += report_item.resource_id + tab - report += str(report_item.quantity).replace('.',',') + tab - report += str(report_item.total_price).replace('.',',') + cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return report diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_reportByResourceForm.form b/product/Coramy/skins/coramy_trade/SalesOrder_reportByResourceForm.form deleted file mode 100755 index 9329ab9c3ef7cd36d46c071164cb2a7b2b5f79b7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_reportByResourceForm.form +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Exporter</title> - <name>SalesOrder_reportByResourceForm</name> - <action>SalesOrder_reportByResource</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_source_section</id> <type>RadioField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <first_item type="int">1</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Coramy', 'Coramy'), ('BLS', 'Coramy.BLS'), ('Houvenaegel', 'Coramy.Houvenaegel')]</items> - <orientation>vertical</orientation> - <required type="int">1</required> - <title>Société</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_searchByClientGroup.form b/product/Coramy/skins/coramy_trade/SalesOrder_searchByClientGroup.form deleted file mode 100755 index 761c9779906751dfefe979e39cfccc74ca225786..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_searchByClientGroup.form +++ /dev/null @@ -1,136 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Rechercher</title> - <name>SalesOrder_searchByClientGroup</name> - <action>Base_searchHandler</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_group_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">15</size> - <title>Organigramme</title> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_state_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[('draft', 'draft'), ('planned', 'planned'), ('ordered', 'ordered'), ('confirmed', 'confirmed'), ('delivered', 'delivered')]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Etats</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SalesOrder_zSearchByClientGroup</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_zReportByClient.zsql b/product/Coramy/skins/coramy_trade/SalesOrder_zReportByClient.zsql deleted file mode 100755 index 9d488d0db20f035fc3e595aef7f5e6d8c88b411e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_zReportByClient.zsql +++ /dev/null @@ -1,36 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>source_section_uid</params> -SELECT group_client.title AS client, sum(movement.quantity) AS quantity, sum(movement.total_price) AS total_price -FROM catalog AS sale_order, catalog AS order_line, category AS category_sc, movement -LEFT JOIN category AS category_group ON ( category_group.uid=sale_order.uid -AND category_group.base_category_uid = <dtml-var "portal_categories.group.uid"> -AND category_group.category_strict_membership = 1 ) -LEFT JOIN catalog AS group_client ON ( group_client.uid = category_group.category_uid ) - -WHERE sale_order.portal_type = "Sales Order" -AND ( order_line.portal_type = "Sales Order Line" -OR order_line.portal_type = "Delivery Cell" ) - -AND order_line.uid = movement.uid -AND movement.delivery_uid = sale_order.uid -AND movement.has_cell_content = 0 - -AND (sale_order.simulation_state = "planned" -OR sale_order.simulation_state = "ordered" -OR sale_order.simulation_state = "draft" -OR sale_order.simulation_state = "confirmed") - -AND category_sc.uid=sale_order.uid -AND category_sc.base_category_uid = <dtml-var "portal_categories.source_section.uid"> -AND category_sc.category_uid = <dtml-var source_section_uid> -AND category_sc.category_strict_membership = 1 - -GROUP BY group_client.title \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesOrder_zReportByResource.zsql b/product/Coramy/skins/coramy_trade/SalesOrder_zReportByResource.zsql deleted file mode 100755 index f50ba76391e8fc7c7fa2bd8a5b85b420dd6d757c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesOrder_zReportByResource.zsql +++ /dev/null @@ -1,34 +0,0 @@ -<dtml-comment> -title: -connection_id:MySQL -max_rows:100000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>source_section_uid</params> -SELECT resource.id AS resource_id, sum(movement.target_quantity) AS quantity, sum(movement.total_price) AS total_price -FROM catalog AS sale_order, catalog AS order_line, category AS category_sc, movement, catalog AS resource - -WHERE sale_order.portal_type = "Sales Order" -AND ( order_line.portal_type = "Sales Order Line" -OR order_line.portal_type = "Delivery Cell" ) - -AND order_line.uid = movement.uid -AND movement.delivery_uid = sale_order.uid -AND movement.has_cell_content = 0 - -AND resource.uid = movement.resource_uid - -AND (sale_order.simulation_state = "planned" -OR sale_order.simulation_state = "ordered" -OR sale_order.simulation_state = "draft" -OR sale_order.simulation_state = "confirmed") - -AND category_sc.uid=sale_order.uid -AND category_sc.base_category_uid = <dtml-var "portal_categories.source_section.uid"> -AND category_sc.category_uid = <dtml-var source_section_uid> -AND category_sc.category_strict_membership = 1 - -GROUP BY resource.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_buildRemiseTransporteurDict.py b/product/Coramy/skins/coramy_trade/SalesPackingList_buildRemiseTransporteurDict.py deleted file mode 100755 index ad3ceab76486c43d766d002803f12aea274a01c9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_buildRemiseTransporteurDict.py +++ /dev/null @@ -1,27 +0,0 @@ -## Script (Python) "SalesPackingList_buildRemiseTransporteurDict" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -delivery_list = context.object_action_list(selection_name='sales_packing_list_selection') - -# we sort the deliveries by source_section, transporteur, destination -RTDict = {} -for delivery in delivery_list : - source_section = delivery.getSourceSectionTitle() - if not source_section in RTDict.keys() : - RTDict[source_section] = {} - transporteur = delivery.getDeliveryMode() - if not transporteur in RTDict[source_section].keys() : - RTDict[source_section][transporteur] = {} - destination = delivery.getDestination() - if not destination in RTDict[source_section][transporteur].keys() : - RTDict[source_section][transporteur][destination] = [] - - RTDict[source_section][transporteur][destination].append(delivery) - -return RTDict diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdi.py b/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdi.py deleted file mode 100755 index d3616310ebad57e0ba8960ff7fd44c4b31e0e4dc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdi.py +++ /dev/null @@ -1,176 +0,0 @@ -## Script (Python) "SalesPackingList_exportEdi" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=batch_mode=0,**kw -##title= -## -# export d un fichier Edi -# format de fichier attendu -# Traduction .rec du fichier Edifact par NY Net - -from string import rjust, zfill -import string -from DateTime import DateTime - -def chaine(num, width): - s = str(int(num)) - if len(s) > width: - result = s[-width:] - else: - result = zfill(s,width) - return result - -def decoupe(s,width): - if len(s) > width: - result_tmp = s[-width:] - else: - result_tmp = rjust(s,width) - return result_tmp - -request=context.REQUEST - -retour_chariot = "\r\n" - -result = "" -num_article = 0 -total_qty = 0 -csp_sequence_expe = 1 - - - -result += "START:AVISAUCHAVISAUCH"+retour_chariot -result += "UNH_DEBUT_MESSAGE____:DESADVEAN005"+retour_chariot - -code_fonction = '9' -result += "BGM_AVIS_EXPEDITION__:"+decoupe(context.getId() , 8)+code_fonction+retour_chariot -result += "DTM_DATE_DOCUMENT____:"+DateTime().strftime("%Y%m%d%H%M")+retour_chariot - -sales_order = context.getCausalityValue(portal_type=['Sales Order']) - -result += "DTM_DATE_LIVR_DEMANDE:"+sales_order.getTargetStopDate().strftime("%Y%m%d%H%M")+retour_chariot - -result += "DTM_DATE_HEURE_EXPE__:"+context.getTargetStartDate().strftime("%Y%m%d%H%M")+retour_chariot - -try: - result += "RFF_NUMERO_COMMANDE__:"+ sales_order.getDestinationReference() +retour_chariot -except: - if not batch_mode: - message="Erreur+sur+la+facture:+il+n\'y+a+pas+de+numéro+de+commande+sur+la+commande" - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - return None - else: - return None - -try: - result += "RFF_DATE_COMMANDE____:"+ sales_order.getDateReception().strftime("%Y%m%d") +retour_chariot -except: - if not batch_mode: - message="Erreur+sur+la+facture:+il+n\'y+a+pas+de+date+de+réception+sur+la+commande" - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - return None - else: - return None - - -# XXX -result += "RFF_BON_LIVRAISON____:"+ context.getId() +retour_chariot -result += "RFF_DATE_____________:"+ context.getTargetStopDate().strftime("%Y%m%d%H%M") +retour_chariot - - -source_section = sales_order.getSourceSectionTitle() -list = sales_order.portal_catalog(Title=source_section, portal_type = 'Organisation') - - -if len(list) > 0: - source = list[0].getObject() - ean_source = source.getEan13Code() - result += "NAD_EXPEDITEUR_______:"+ ean_source + retour_chariot - - -ean_destination = sales_order.getDestinationDecisionValue(portal_type=['Organisation']).getEan13Code() - -if ean_destination in (None,''): - if not batch_mode: - message="Erreur+sur+la+facture:+il+n\'y+a+pas+de+code+ean+sur+l\'organisation:+commandé+par." - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - return None - else: - return None - -result += "NAD_EMETTEUR_CDE_____:"+ ean_destination + retour_chariot -result += "NAD_INTER_A_LIVRER___:"+ ean_destination + retour_chariot -result += "NAD_DEST_MESSAGE_____:"+ ean_destination + retour_chariot - - -result += "TOD_CONDITION_LIVR___:"+"SD"+retour_chariot -result += "TDT_DETAIL_TRANSPORT_:"+"3031"+retour_chariot - - -# { ean13code: send_quantity , ...} -send_quantity_dict = {} -packing_list_movement_list = context.getMovementList() -for movement in packing_list_movement_list: - send_quantity_dict[ movement.Amount_getCodeEan13Client() ] = int(movement.getTargetQuantity()) - -# [ (ean13code, difference) ] -difference_quantity_list = [] -sales_order_movement_list = sales_order.getMovementList() - - -for movement in sales_order_movement_list: - desired_quantity = int(movement.getTargetQuantity() ) - eanCode = movement.Amount_getCodeEan13Client() - try: - send_quantity = send_quantity_dict[ eanCode ] - difference_quantity = (desired_quantity - send_quantity) - - if difference_quantity <> 0: - difference_quantity_list.append( ( eanCode , difference_quantity ) ) - if send_quantity == 0: - del send_quantity_dict[ eanCode ] - except KeyError: - None - -if send_quantity_dict <> {}: - num_ct = 1 -else: - num_ct = 0 -pac_emballage = chaine( num_ct , 8 ) + "CT" - -weight = context.PackingList_getTotalGrossWeight() - -result += "CSP_SEQUENCE_EXPE____:"+ decoupe( "%i"%csp_sequence_expe,12) +retour_chariot -result += "PAC_EMBALLAGE________:"+ pac_emballage + retour_chariot -result += "MEA_MESURES_POIDS_TOT:"+ str(weight) +retour_chariot - -if difference_quantity_list <> []: - for difference_quantity in difference_quantity_list: - result += "LIN_ARTICLE__________:"+difference_quantity[0]+retour_chariot - result += "QVR_EXPED_PARTIELLE__:"+"%i"%(difference_quantity[1])+retour_chariot - - -if send_quantity_dict <> {}: - - result += "CSP_SEQUENCE_EXPE____:"+decoupe( "%i"% (csp_sequence_expe+1),12) + "%i"%csp_sequence_expe +retour_chariot - csp_sequence_expe += 1 - result += "PAC_EMBALLAGE________:"+pac_emballage +retour_chariot - result += "QTY_QUANTITE_KGM_____:"+ str(weight) + retour_chariot - - for ean_key in send_quantity_dict.keys(): - num_article += 1 - result += "LIN_ARTICLE__________:" + decoupe( "%i" % num_article , 5 ) + ean_key + retour_chariot - result += "QTY_QTE_EXPEDIEE_UC__:" + "%i"%(send_quantity_dict[ ean_key ]) + retour_chariot - - result += "CNT_CONTROLE_TOTAL___:%i"% num_article+retour_chariot - -if batch_mode: - return result -else: - request.RESPONSE.setHeader('Content-Type','application/text') - return result diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdiList.py b/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdiList.py deleted file mode 100755 index 20691b7e91ffd5e941358f402e4949e182dc8a39..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_exportEdiList.py +++ /dev/null @@ -1,32 +0,0 @@ -## Script (Python) "SalesPackingList_exportEdiList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=batch_mode=0,**kw -##title= -## -# generate the Edi file of the selection of sales packing list -request = context.REQUEST - -object_list = context.object_action_list(selection_name='sales_packing_list_selection') -result = "" - -for order in object_list: - - try: - # export the container - result += order.SalesPackingList_exportEdi( batch_mode = 1) - except: - message='Erreur+sur+la+livraison:+identifiant+%s.' % (order.getId()) - redirect_url = '%s?%s%s' % ( context.absolute_url()+'/view', 'portal_status_message=',message) - request[ 'RESPONSE' ].redirect( redirect_url ) - -# and this is the end .... -if batch_mode: - return result - -else: - request.RESPONSE.setHeader('Content-Type','application/text') - return result diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPacking.py b/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPacking.py deleted file mode 100755 index 6c55d18e71df1dae743f9f378e9a5ca613d6a686..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPacking.py +++ /dev/null @@ -1,128 +0,0 @@ -## Script (Python) "SalesPackingList_oneContainerAutoPacking" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=container_type='', delivery_mode='', gross_weight='', user_name='',batch_mode=0 -##title= -## -try: - request = context.REQUEST - - # verify the delivery_mode in the Sales Packing List - if context.getDeliveryMode() != delivery_mode: - raise None - # verify the packing doesn't content any container - container_list = context.contentValues(filter={'portal_type':'Container'}) - if len(container_list)>0: - raise None - - - - delivery_line_list = context.contentValues(filter={'portal_type':'Sales Packing List Line'}) - - - # creation of the container - # inspired from Container_fastInput - - - #Container_zGetCellList - container_number = 1 - - - - - new_container_id = 'c'+str(container_number) - - # we use container_type to know which are the resource (and variation) of the container - container_type_item_list = container_type.split('/') - container_resource_url = '/'.join(container_type_item_list[0:2]) - container_resource_variation = 'variante/'+container_type - - """ - context.portal_types.constructContent(type_name = 'Container', - container = delivery, - int_index = container_number, - serial_number = "%06d%04d" % (int(delivery.getId()),container_number), - resource = container_resource_url, - variation_base_category_list = ['variante'], - variation_category_list = [container_resource_variation], - gross_weight = gross_weight, - id = new_container_id, - ) - - container = delivery[new_container_id] - """ - - - - - # construct the container lines - """ - for delivery_line in delivery_line_list: - - new_container_line_id = str(container.generateNewId()) - - # construct new content (container_line) - context.portal_types.constructContent(type_name = 'Container Line', - container = container, - id = new_container_line_id, - resource = delivery_line.getRelativeUrl(), - variation_base_category_list = delivery_line.getVariationBaseCategoryList(), - variation_category_list = delivery_line.getVariationCategoryList - ) - container_line = container[new_container_line_id] - - # set target_quantities in container_lines - container_cell_list = container_line.contentValues() - delivery_cell_list = delivery_line.contentValues() - - for container_cell in container_cell_list: - quantity_updated = 0 - for delivery_cell in delivery_cell_list: - if container_cell.test(context.asContext(categories=deliveryCell.getVariationCategoryList()) : - container_cell.setTargetQuantity(deliveryCell.getQuantity()) - container_cell.flushActivity(invoke=1) - quantity_updated = 1 - break - - - # update target_quantities on delivery_lines or cells - container.edit() - - """ - - # change the workflow - #context.Item_doWorkflowTransition(workflow_action='user_set_ready', workflow_id='delivery_workflow') - - - """ - - # print container label - container.Container_printLabel(user_name=user_name) - - """ - - - # print - # XXX this does not print anything, it's just a page template - #context.sales_packing_list_print() - -except: - message = 'Livraison vente identifiant %s' % context.getId() - # and this is the end .... - if batch_mode: - context.Coramy_sendMailToUser(user_name=user_name,mSubj="Autocolisage échoué",mMsg=message) - else: - redirect_url = '%s?%s' % ( context.absolute_url(), 'portal_status_message=Autocolisage+échoué.') - return request[ 'RESPONSE' ].redirect( redirect_url ) - -else: - message = 'Livraison vente identifiant %s' % context.getId() - # and this is the end .... - if batch_mode: - context.Coramy_sendMailToUser(user_name=user_name,mSubj="Autocolisage réussi",mMsg=message) - else: - redirect_url = '%s?%s' % ( context.absolute_url(), 'portal_status_message=Autocolisage+réussi.') - return request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingForm.form b/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingForm.form deleted file mode 100755 index 2a7703e834e6572b94f82945eddc8caa06eabcbc..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingForm.form +++ /dev/null @@ -1,130 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Auto-coliser</title> - <name>SalesPackingList_oneContainerAutoPackingForm</name> - <action>SalesPackingList_oneContainerAutoPackingSelectScript</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable_expression></editable_expression> - <editable_permission></editable_permission> - <editable_role></editable_role> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <not_viewable type="int">0</not_viewable> - <read_only type="int">0</read_only> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <viewable_expression></viewable_expression> - <viewable_permission></viewable_permission> - <viewable_role></viewable_role> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_categories.delivery_mode.getFormItemList()[1][1]</default> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_container_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('carton A', 'composant/CAame/A'), ('carton B', 'composant/CAame/B'), ('carton C', 'composant/CAame/C'), ('carton D1', 'composant/CAame/D1'), ('carton D2', 'composant/CAame/D2'), ('carton D3', 'composant/CAame/D3')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type de colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_gross_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Poids brut (kg)</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_method_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.method_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingList.py b/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingList.py deleted file mode 100755 index 93dfd5daf3c0780b7f591195be61ec9b370169bd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingList.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "SalesPackingList_oneContainerAutoPackingList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=container_type='', delivery_mode='', gross_weight='' -##title= -## -# auto packing a list of container -request = context.REQUEST - -object_list = context.object_action_list(selection_name='sales_packing_list_selection') -user_name = context.portal_membership.getAuthenticatedMember().getUserName() - -for invoice in object_list: - invoice.activate(activity="SQLQueue").SalesPackingList_oneContainerAutoPacking(container_type=container_type, delivery_mode=delivery_mode, gross_weight=gross_weight, user_name=user_name,batch_mode=1) - -redirect_url = '%s?%s' % ( context.absolute_url(), 'portal_status_message=Autocolisage+démarré.') -return request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingSelectScript.py b/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingSelectScript.py deleted file mode 100755 index 4b48186a1d4bcf98b37449ac4e02c6e534b19adf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_oneContainerAutoPackingSelectScript.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "SalesPackingList_oneContainerAutoPackingSelectScript" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=method_action='', container_type='', delivery_mode='', gross_weight='' -##title= -## -# get the script -request = context.REQUEST - -if method_action == 'SalesPackingList_oneContainerAutoPackingList': - return context.SalesPackingList_oneContainerAutoPackingList(container_type=container_type, delivery_mode=delivery_mode, gross_weight=gross_weight) -elif method_action == 'SalesPackingList_oneContainerAutoPacking': - return context.SalesPackingList_oneContainerAutoPacking(container_type=container_type, delivery_mode=delivery_mode, gross_weight=gross_weight) -else: - redirect_url = '%s?%s' % ( context.absolute_url() - , 'portal_status_message=Erreur:+script+à+lancer+inconnu.' - ) - - return request.RESPONSE.redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_printForm.form b/product/Coramy/skins/coramy_trade/SalesPackingList_printForm.form deleted file mode 100755 index bfaf5dad2a0375a448ae056557c294b5617bf51e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_printForm.form +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Imprimer</title> - <row_length>4</row_length> - <name>SalesPackingList_printForm</name> - <pt>form_dialog</pt> - <action>sales_packing_list_secure_print</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_packing_list_page_template</id> <type>RadioField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra_item></extra_item> - <first_item type="int">1</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Bordereau de livraison', 'sales_packing_list_print'), ('Liste de colisage', 'sales_packing_list_container_list_print')]</items> - <orientation>vertical</orientation> - <required type="int">1</required> - <title>Impression demandée</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/SalesPackingList_searchByClientGroup.form b/product/Coramy/skins/coramy_trade/SalesPackingList_searchByClientGroup.form deleted file mode 100755 index e50b76af3e2b664ae5bfd5f901b204694c416633..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/SalesPackingList_searchByClientGroup.form +++ /dev/null @@ -1,136 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Rechercher</title> - <name>SalesOrder_searchByClientGroup</name> - <action>Base_searchHandler</action> - <enctype></enctype> - <method>POST</method> - <pt>form_view_dialog</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_group_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">15</size> - <title>Organigramme</title> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reset</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">1</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Recherche globale</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_state_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <items type="list">[('draft', 'draft'), ('planned', 'planned'), ('ordered', 'ordered'), ('confirmed', 'confirmed'), ('getting_ready', 'getting_ready'), ('ready', 'ready'), ('started', 'started'), ('delivered', 'delivered')]</items> - <required type="int">0</required> - <size type="int">10</size> - <title>Etats</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_list_method_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SalesPackingList_zSearchByClientGroup</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>x</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_list_form_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title></title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.REQUEST.form_id</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/bls_echantillon_print.pt b/product/Coramy/skins/coramy_trade/bls_echantillon_print.pt deleted file mode 100755 index 83dc49322390bcd3ca891e8deb6353db3570d733..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/bls_echantillon_print.pt +++ /dev/null @@ -1,205 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> -<link rel=stylesheet type="text/css" href="echantillon.css"> - - - </head> - - <body - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3"><p align="center"> - <img src="BLS.png" width="15%" valign="bottom"><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 86 26 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="50%" class="Border" tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele</span> - - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele</span> - </span> - - - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="230" height="280" align="center" valign="top"> - <img src="space.png" width="1" height="230"> - <span tal:repeat="coloris coloris_list"> - - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"/> - </span> - </td> - </tr> - </table> - <br> - - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"> - </td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" -tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - - </td> - - </tr> - - </span> - </table> - </span> - - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td> - </tr> - - - </table> -<span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele</span> - - - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" - width="100%" /> - </span> - </td> - </tr> - </table> - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td><td></td><td></td> - </tr> - - - </table></span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/condition_achat_list.form b/product/Coramy/skins/coramy_trade/condition_achat_list.form deleted file mode 100755 index 602b1579ef114beec2388624d7e255447243a27f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_achat_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de conditions d'achat</title> - <row_length>4</row_length> - <name>condition_achat_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Condition'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('default_destination_administration_person_title', 'Gestionaire')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Condition'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('default_destination_administration_person_title', 'Gestionaire')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Condition Achat', 'Condition Achat')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>condition_vente_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Conditions d'achat</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_achat_profil_view.form b/product/Coramy/skins/coramy_trade/condition_achat_profil_view.form deleted file mode 100755 index 714500aae86d94372b9ef5863698e4b5b03bbb29..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_achat_profil_view.form +++ /dev/null @@ -1,409 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Profil d'achat</title> - <row_length>4</row_length> - <name>trade_condition_profile_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_section</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_decision_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Commandé à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Géré par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_payment_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_payment</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Payer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Pour le compte de</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_decision_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Commandé par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_administration_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Facturer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_payment_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_payment</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Payé par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_destination_decision_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_achat_sql_search.zsql b/product/Coramy/skins/coramy_trade/condition_achat_sql_search.zsql deleted file mode 100755 index 178b54068631e982ce8017a8b8906de76bd7730f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_achat_sql_search.zsql +++ /dev/null @@ -1,43 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>destination_section_uid="" -source_uid="" -destination_uid=""</params> -SELECT DISTINCT condition.id, condition.Description, condition.path, condition.uid, condition.portal_type -FROM catalog AS condition -<dtml-if expr="destination_section_uid<>''"> -, category as cat1 -</dtml-if> -<dtml-if expr="source_uid<>''"> -, category as cat2 -</dtml-if> -<dtml-if expr="destination_uid<>''"> -, category as cat3 -</dtml-if> -WHERE condition.portal_type="Condition Achat" - -<dtml-if expr="destination_section_uid<>''"> -AND condition.uid = cat1.uid -AND cat1.category_uid = "<dtml-var destination_section_uid>" -AND cat1.base_category_uid = <dtml-var "portal_categories.destination_section.uid"> -</dtml-if> - -<dtml-if expr="source_uid<>''"> -AND condition.uid = cat2.uid -AND cat2.category_uid = "<dtml-var source_uid>" -AND cat2.base_category_uid = <dtml-var "portal_categories.source.uid"> -AND cat2.category_strict_membership = 1 -</dtml-if> - -<dtml-if expr="destination_uid<>''"> -AND condition.uid = cat3.uid -AND cat3.category_uid = "<dtml-var destination_uid>" -AND cat3.base_category_uid = <dtml-var "portal_categories.destination.uid"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_achat_view.form b/product/Coramy/skins/coramy_trade/condition_achat_view.form deleted file mode 100755 index 88f3df7d445c07f82156b8df09f5007ead1c75f5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_achat_view.form +++ /dev/null @@ -1,493 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Condition d'achat</title> - <row_length>4</row_length> - <name>condition_achat_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Condition</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Groupe</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_activity</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Activité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/activity/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_effective_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Valide à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_expiration_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Expire le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>trade_condition_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'trade_condition_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_paiement_view.form b/product/Coramy/skins/coramy_trade/condition_paiement_view.form deleted file mode 100755 index f9258b5668b34777dadb4bfa1221a95f50cb765e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_paiement_view.form +++ /dev/null @@ -1,289 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Condition de paiement</title> - <row_length>4</row_length> - <name>condition_paiement_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Paiement</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_payment_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Pourcentage du total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_payment_amount</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Montant</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_payment_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Mode de paiement</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/payment_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_payment_term</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Délai de paiement (jours)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_payment_end_of_month</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Paiement en fin de mois</title> - </values> - <tales> - <default>here/getPaymentEndOfMonth</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_payment_additional_term</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Délai supplémentaire (jours)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_trade_date</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Date de référence</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/trade_date/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_vente_list.form b/product/Coramy/skins/coramy_trade/condition_vente_list.form deleted file mode 100755 index 5691367c9e8739522950c159188e60094ce332b7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_vente_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de conditions de vente</title> - <row_length>4</row_length> - <name>condition_vente_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Condition'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('group', 'Groupe client'), ('default_destination_decision_organisation_title', 'Command\xe9 par'), ('default_destination_title', 'Livrer \xe0')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Condition'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('group', 'Groupe client'), ('default_destination_decision_organisation_title', 'Command\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('my_source_administration_title', 'Gestionaire')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Condition Vente', 'Condition Vente')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>condition_vente_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Conditions de vente</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_vente_profil_view.form b/product/Coramy/skins/coramy_trade/condition_vente_profil_view.form deleted file mode 100755 index 6413a3bded3d35f59a9b3db3b098ab6721c20a31..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_vente_profil_view.form +++ /dev/null @@ -1,409 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Profil de vente</title> - <row_length>4</row_length> - <name>trade_condition_profile_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Pour le compte de</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_decision_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Commandé à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Géré par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_payment_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_payment</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Payer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_section</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_decision_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Commandé par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_administration_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Facturer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_payment_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_payment</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Payé par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_source_decision_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Code fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_vente_sql_search.zsql b/product/Coramy/skins/coramy_trade/condition_vente_sql_search.zsql deleted file mode 100755 index 1b685ed63282fca5e7e3afd270c52f96bb50309b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_vente_sql_search.zsql +++ /dev/null @@ -1,61 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>source_section_uid="" -destination_uid="" -group_uid="" -destination_decision_uid=""</params> -SELECT DISTINCT condition.id, condition.Description, condition.path, condition.uid, condition.portal_type -FROM catalog AS condition -<dtml-if expr="source_section_uid<>''"> -, category as cat1 -</dtml-if> -<dtml-if expr="destination_uid<>''"> -, category as cat2 -</dtml-if> -<dtml-if expr="destination_decision_uid<>''"> -, category as cat3 -</dtml-if> -<dtml-if expr="group_uid<>''"> -, category as cat4 -</dtml-if> -<dtml-if expr="destination_uid==''"> -LEFT JOIN category as cat2 -ON (cat2.uid=condition.uid -AND cat2.base_category_uid = <dtml-var "portal_categories.destination.uid">) -</dtml-if> -WHERE condition.portal_type="Condition Vente" - -<dtml-if expr="source_section_uid<>''"> -AND condition.uid = cat1.uid -AND cat1.category_uid = "<dtml-var source_section_uid>" -AND cat1.base_category_uid = <dtml-var "portal_categories.source_section.uid"> -AND cat1.category_strict_membership = 1 -</dtml-if> - -<dtml-if expr="destination_uid<>''"> -AND condition.uid = cat2.uid -AND cat2.category_uid = "<dtml-var destination_uid>" -AND cat2.base_category_uid = <dtml-var "portal_categories.destination.uid"> -</dtml-if> -<dtml-if expr="destination_uid==''"> -AND cat2.uid IS NULL -</dtml-if> - -<dtml-if expr="group_uid<>''"> -AND condition.uid = cat4.uid -AND cat4.category_uid = "<dtml-var group_uid>" -AND cat4.base_category_uid = <dtml-var "portal_categories.group.uid"> -</dtml-if> - -<dtml-if expr="destination_decision_uid<>''"> -AND condition.uid = cat3.uid -AND cat3.category_uid = "<dtml-var destination_decision_uid>" -AND cat3.base_category_uid = <dtml-var "portal_categories.destination_decision.uid"> -</dtml-if> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/condition_vente_view.form b/product/Coramy/skins/coramy_trade/condition_vente_view.form deleted file mode 100755 index 9169728c24926019c847f26810b550e8cc8a34de..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/condition_vente_view.form +++ /dev/null @@ -1,493 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Condition de vente</title> - <row_length>4</row_length> - <name>condition_vente_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Condition</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Groupe</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_activity</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Activité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/activity/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_effective_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Valide à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_expiration_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Expire le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>trade_condition_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'trade_condition_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/container_aggregated_view.form b/product/Coramy/skins/coramy_trade/container_aggregated_view.form deleted file mode 100755 index 39615d7eb65038bf539d43111f4510871bda640a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/container_aggregated_view.form +++ /dev/null @@ -1,317 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Colis</title> - <row_length>4</row_length> - <name>container_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Colis n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Conteneur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">2</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">4</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('target_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('target_quantity', 'target_quantity')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>container_line_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/container_line_target_quantity_view.form b/product/Coramy/skins/coramy_trade/container_line_target_quantity_view.form deleted file mode 100755 index aeebf346c761eb81459d593a78655ecb5465175d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/container_line_target_quantity_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de colis</title> - <row_length>4</row_length> - <name>container_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('ttarget_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/container_line_view.form b/product/Coramy/skins/coramy_trade/container_line_view.form deleted file mode 100755 index 0b596d13eb55b6f287e2f59cbb61f7320585e4bb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/container_line_view.form +++ /dev/null @@ -1,305 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de colis</title> - <row_length>4</row_length> - <name>container_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/container_list.form b/product/Coramy/skins/coramy_trade/container_list.form deleted file mode 100755 index 34f1748790fb8ef4704453652b3231d65f6acb8c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/container_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de colis</title> - <row_length>4</row_length> - <name>container_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Id', 'Colis'), ('int_index', 'Num\xe9ro'), ('resource_title', 'Conteneur'), ('variation_text', 'Variantes'), ('gross_weight', 'Poids brut'), ('target_total_quantity', 'Quantit\xe9 colis\xe9e'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Container', 'Container')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>container_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/container_view.form b/product/Coramy/skins/coramy_trade/container_view.form deleted file mode 100755 index 58008181c145ab9825574504314f52293cde2dba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/container_view.form +++ /dev/null @@ -1,398 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Colis</title> - <row_length>4</row_length> - <name>container_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Colis</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_int_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Colis n°</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_gross_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Poids brut (kg)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_serial_number</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° de série</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité colisée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité colisée: %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>composant</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Conteneur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">2</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">4</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('Variated_getTailleClient', 'Taille client'), ('target_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('target_quantity', 'target_quantity')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Container_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>container_line_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Contenu du colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/copy_of_echantillon_print.pt b/product/Coramy/skins/coramy_trade/copy_of_echantillon_print.pt deleted file mode 100755 index e6c773af9d89b054b6e5a899fb50eb151ff20a04..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/copy_of_echantillon_print.pt +++ /dev/null @@ -1,210 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> -<link rel=stylesheet type="text/css" href="echantillon"> - - - </head> - - <body - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="50%" class="Border" tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele</span> - - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele</span> - </span> - - - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="280" height="280" align="center" valign="top"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - <br> - - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"> - </td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" -tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - - </td> - - </tr> - - </span> - </table> - </span> - - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td> - </tr> - - - </table> -<span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele</span> - - - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td><td></td><td></td> - </tr> - - - </table></span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/copy_of_sales_invoice_list_view.form b/product/Coramy/skins/coramy_trade/copy_of_sales_invoice_list_view.form deleted file mode 100755 index 4e9408ec7fa659c679693207e7ba492549ad8452..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/copy_of_sales_invoice_list_view.form +++ /dev/null @@ -1,457 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Commande échantillons</title> - <name>order_view</name> - <action>base_edit</action> - <enctype>multipart/form-data</enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Numéro de facture</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_buyer_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>contact</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Acheteur</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Rayon</title> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_value_added_tax_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Taux de TVA</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_value_added_tax_recoverable</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Non', '0'), ('Oui', '1')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Soumis à la TVA</title> - </values> - <tales> - <default>python:str(here.getValueAddedTaxRecoverable())</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_date_rdv</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date rendez-vous</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Collection</title> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer avant le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Invoice Line', 'Invoice Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <stat_method></stat_method> - <title>Lignes de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/currency_list.form b/product/Coramy/skins/coramy_trade/currency_list.form deleted file mode 100755 index 15f8df480ca06d05acc76cc90803810e5fc77c1f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/currency_list.form +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Currency List</title> - <row_length>4</row_length> - <name>currency_list</name> - <pt>form_list</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'id'), ('title', 'Title')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Currency', 'Currency')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>currency_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Currency Listbox</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/currency_view.form b/product/Coramy/skins/coramy_trade/currency_view.form deleted file mode 100755 index e13f16e4fdaf929c9af7ec7690af4a8f2d91892a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/currency_view.form +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Currency</title> - <row_length>4</row_length> - <name>currency_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/default_pdf_template.pt b/product/Coramy/skins/coramy_trade/default_pdf_template.pt deleted file mode 100755 index 7d7b8f1c93ce405e0df65167d3a10491c081b8b1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/default_pdf_template.pt +++ /dev/null @@ -1,815 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<template filename="default.pdf" - pagesize="A4" - landscape="0" - showboundary="0" - leftmargin="1cm" - rightmargin="1cm" - topmargin="1cm" - bottommargin="1cm" - allowsplitting="1" - tal:define="packing_list python:here.getCausalityValueList(portal_type=['Sale Packing List','Sales Packing List'])[0]; - invoice_id python:here.getId(); - invoice_reference python: here.getReference(0); - resource_title python:here.getResourceTitle() or 'Euros'; - resource_id python:here.getResourceId() or 'EUR'; - incomeHT python: here.getTotalPrice() or 0; - income python: here.Invoice_zGetTotalNetPrice() or 0; - vat python: here.Invoice_zGetTotalVat(); - payable python: here.getDefaultTotalPrice(); - payable python: income + vat; - vad_recoverable python: here.getValueAddedTaxRecoverable(); - vad_ratio python: here.getValueAddedTaxRatio(); - source_decision_title python: here.getSourceDecisionTitle(); - payment_mode python: here.getPaymentMode(); - payment_term python: here.getPaymentTerm(30); - incoterm python: packing_list.getIncotermId(); - delivery_mode python: packing_list.getDeliveryModeTitle().split('/')[-1]; - escompte_value python: here.Invoice_zGetEscompteDescription(); - container_number python: len(packing_list.contentValues(filter={'portal_type':'Container'})); - total_price python:here.getDefaultTotalPrice();"> - - <!-- due_date python: DateTime.getNextMonth(start_date.month(), start_date.year()) ; --> - <tal:block - tal:define="destination python: here.getDestinationValue(); - destination_administration python: here.getDestinationAdministrationValue() or here.getDestinationSectionValue(); - DateTime python: modules['DateTime'].DateTime; - start_date python:here.getStartDate( packing_list.getTargetStopDate() ) ; - due_date python: here.Invoice_zGetDueDate(); - packing_list_id python:packing_list.getId(); - code_comptable python: destination_administration.getCodeComptable(); - eu_vat_code python: destination_administration.getEuVatCode(); - source_section_item python: here.Invoice_zGetSourceSectionDescription(); - gross_weight python: str(packing_list.PackingList_getTotalGrossWeight()); - order python:packing_list.getCausalityValueList(portal_type=['Sale Order','Sales Order'])[0];"> - - <stylesheet> - - <paragraphstyle name="Normal" fontname="Helvetica" fontsize="12" - align="LEFT" firstLineIndent="0"/> - <paragraphstyle name="Bullet" fontname="Helvetica" fontsize="12" - bulletFontName="Symbol" bulletFontSize="14" - leftIndent="20" firstLineIndent="0" - parent="Normal"/> - - <paragraphstyle name="Heading1" parent="Normal" - fontname="Helvetica-Bold" fontsize="16"/> - <paragraphstyle name="Heading2" parent="Normal" - fontname="Helvetica-Bold" fontsize="15"/> - <paragraphstyle name="Heading3" parent="Normal" - fontname="Helvetica-Bold" fontsize="14"/> - <paragraphstyle name="Heading4" parent="Normal" - fontname="Helvetica-Bold" fontsize="13"/> - <paragraphstyle name="Heading5" parent="Normal" - fontname="Helvetica-Bold" fontsize="12"/> - <paragraphstyle name="Heading6" parent="Normal" - fontname="Helvetica-Bold" fontsize="11"/> - <paragraphstyle name="Heading7" parent="Normal" - fontname="Helvetica-Bold" fontsize="10"/> - - <paragraphstyle name="Small" parent="Normal" fontname="Helvetica-Bold" - fontsize="7"/> - <paragraphstyle name="Cell" parent="Normal" fontname="Helvetica-Bold" - fontsize="12" - alignment="center" /> - <paragraphstyle name="CellHeading" parent="Normal" - fontname="Helvetica-Bold" fontsize="13" - alignment="center"/> - - <paragraphstyle name="Example" fontname="Courier-Oblique" fontsize="10" - parent="Normal"/> - - <paragraphstyle name="InvoiceItem" fontname="Courier-Oblique" - fontsize="10" - parent="Normal"/> - - <tablestyle name="StandardTable"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 3)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 7)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0.5, colors.black)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 1, colors.black)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 10)"/> - </tablestyle> - - <tablestyle name="HeadLine"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (1,0), 'LEFT')"/> - <stylecmd expr="('ALIGN', (2,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 8)"/> - <stylecmd expr="('BACKGROUND', (0,0), (-1,-1), colors.white)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="HeadLine2"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'LEFT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 6)"/> - <stylecmd expr="('BACKGROUND', (0,0), (-1,-1), colors.white)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="TotalLine"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica-Oblique', 8)"/> - <stylecmd expr="('FONT', (-2,0), (-2,-1), 'Helvetica', 8)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="CellTable"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (1,-1), 'LEFT')"/> - <stylecmd expr="('ALIGN', (2,0), (-4,-1), 'CENTER')"/> - <stylecmd expr="('ALIGN', (-3,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (2,1), (-5,-1), 0.2, colors.black)"/> - <stylecmd expr="('BOX', (2,1), (-5,-1), 0.2, colors.black)"/> - <stylecmd expr="('FONT', (0,0), (-1,0), 'Helvetica', 6)"/> - <stylecmd expr="('FONT', (0,1), (-1,-1), 'Helvetica', 8)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - </stylesheet> - - <pagetemplate id="FirstPage" nextid="SecondPage" startframe="content"> - <static> - - <!-- Entete CORAMY --> - <tal:block tal:condition="python: source_section_item[0] == 'Houvenaegel'" > - <infostring align="left" x="1.4cm" y="28.3cm" size="26" - font="Times-Bold" color="(0,0,0)">Houvenaegel</infostring> - <infostring align="left" x="2cm" y="27.4cm" size="26" - font="Times-Bold" color="(0,0,0)">Création</infostring> - </tal:block> - <tal:block tal:condition="python: source_section_item[0] == 'BLS'" > - <infostring align="left" x="2cm" y="27.7cm" size="60" - font="Times-Bold" color="(0,0,0)">BLS</infostring> - <infostring align="left" x="1.8cm" y="27.3cm" size="10" - font="Times-Bold" color="(0,0,0)">Beachwear License Services</infostring> - </tal:block> - <tal:block tal:condition="python: source_section_item[0] == 'Coramy'" > - <infostring align="left" x="1.4cm" y="28cm" size="40" - font="Times-Bold" color="(0,0,0)">Coramy</infostring> - </tal:block> - - - <rectangle x="1cm" y="28cm" width="0.3cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - <rectangle x="6.5cm" y="28cm" width="13.5cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - - <infostring align="left" x="7cm" y="28.5cm" size="8" - font="Helvetica" color="(0,0,0)" tal:content="python: '%s' % source_section_item[1]"> - 5 bis, rue Denis Cordonnier - F.59820 GRAVELINES - Tel. 33(0)3 28 51 91 51 - Fax 33(0)3 28 23 34 96 - </infostring> - <infostring align="left" x="10cm" y="28.1cm" size="8" - font="Helvetica" color="(1,1,1)" tal:content="python: '%s' % source_section_item[2]"> - MAILLOTS DE BAIN - GYM - SWIMSUITS - FITNESS - </infostring> - <infostring align="left" x="6.8cm" y="27.7cm" size="6" - font="Helvetica" color="(0,0,0)" tal:content="python: '%s' % source_section_item[3]"> - SAS capital de 435.200 EUR - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971 - </infostring> - - <!-- Titre du document (Facture n°) --> - <infostring align="left" x="6.8cm" y="26cm" size="16" - font="Helvetica-Bold" color="(0,0,0)" tal:content="python: 'Facture n° %s' % invoice_reference"> - Facture n° XXX - </infostring> - - <infostring align="left" x="14cm" y="26cm" size="8" - font="Helvetica" color="(0,0,0)" tal:content="python: start_date.strftime('Gravelines, le %e/%m/%y')"> - Gravelines, le XXX - </infostring> - - <infostring align="left" x="18.5cm" y="26cm" size="8" - font="Helvetica-Bold" color="(0,0,0)"> - Folio %(page)s - </infostring> - - <!-- Grand cadre de la facture --> - <line x1="1cm" x2="20.5cm" y1="25cm" y2="25cm" width="1"/> - <line x1="1cm" x2="1cm" y1="25cm" y2="4cm" width="1"/> - <line x1="20.5cm" x2="20.5cm" y1="25cm" y2="4cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="4cm" y2="4cm" width="1"/> - - <!-- Entete de facture --> - <!-- Quadrillage de l'entete de facture --> - <line x1="4.2cm" x2="4.2cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="11.4cm" x2="11.4cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="18.5cm" x2="18.5cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="4.2cm" x2="18.5cm" y1="22.3cm" y2="22.3cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="20.3cm" y2="20.3cm" width="1"/> - - <infostring align="left" x="1.8cm" y="24.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Commande No - </infostring> - <infostring align="left" x="1.5cm" y="24.5cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Auftrag Nr / Order No - </infostring> - <infostring align="center" x="2.5cm" y="24.2cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: order.getDestinationReference()"> - DestinationReference XXX - </infostring> - - <infostring align="left" x="1.7cm" y="23.8cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Confirmation No - </infostring> - <infostring align="left" x="1.8cm" y="23.6cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Bestätigung Nr - </infostring> - <infostring align="center" x="2.5cm" y="23.3cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: order.getId()"> - Order.id XXX - </infostring> - - <infostring align="left" x="1.1cm" y="22.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison No / Lieferschein Nr - </infostring> - <infostring align="left" x="1.8cm" y="22.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Delifery note No - </infostring> - <infostring align="center" x="2.5cm" y="22.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: packing_list_id"> - PackingListId XXX - </infostring> - - <infostring align="left" x="1.7cm" y="21.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Nombre de colis - </infostring> - <infostring align="left" x="1.9cm" y="21.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Kolli anzahl - </infostring> - <infostring align="left" x="1.8cm" y="21.5cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Nb of parcels - </infostring> - <infostring align="center" x="3.5cm" y="21.7cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: container_number"> - NbrColis XXX - </infostring> - - <infostring align="left" x="1.3cm" y="21cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Poids brut (kg) - </infostring> - <infostring align="left" x="1.3cm" y="20.8cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Brutto-gewicht - </infostring> - <infostring align="left" x="1.3cm" y="20.6cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Gross weight - </infostring> - <infostring align="center" x="3.5cm" y="20.8cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: gross_weight"> - TotalGrossWeightXXX - </infostring> - - <infostring align="left" x="6cm" y="24.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison / Versand / Delivery - </infostring> - <infostring align="left" x="4.4cm" y="24.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: destination.getTitle()"> - LA REDOUTE BERTHELOT - </infostring> - <tal:block tal:define="addr_list python: destination.getDefaultAddress().asText(country='France').split('\n') + [(destination.getDefaultAddressRegion() or '').split('/')[-1]]"> - <tal:block tal:repeat="addr_item addr_list"> - <tal:block tal:define="index repeat/addr_item/index"> - <infostring align="left" x="4.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:attributes="y python: '%fcm' % (24 - index * 0.4)" tal:content="addr_item"> - 119 CHAUSSEE BERTHELOT - </infostring> - </tal:block> - </tal:block> - </tal:block> - - <infostring align="left" x="11.6cm" y="24.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: destination_administration.getTitle()"> - REDOUTE - </infostring> - <tal:block tal:define="addr_list python: destination_administration.getDefaultAddress().asText(country='France').split('\n') + [(destination_administration.getDefaultAddressRegion() or '').split('/')[-1]]"> - <tal:block tal:repeat="addr_item addr_list"> - <tal:block tal:define="index repeat/addr_item/index"> - <infostring align="left" x="11.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:attributes="y python: '%fcm' % (24 - index * 0.4)" tal:content="addr_item"> - 119 CHAUSSEE BERTHELOT - </infostring> - </tal:block> - </tal:block> - </tal:block> - - <infostring align="left" x="4.5cm" y="21.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Commercial - </infostring> - <infostring align="left" x="6cm" y="21.7cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: source_decision_title "> - Commercial XXX - </infostring> - <infostring align="left" x="4.4cm" y="21.1cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Paiement - </infostring> - <infostring align="left" x="4.6cm" y="20.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Zahlung - </infostring> - <infostring align="left" x="4.5cm" y="20.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Payment - </infostring> - <infostring align="left" x="5.8cm" y="21cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: payment_mode "> - payment_modeXXX - </infostring> - <infostring align="left" x="5.8cm" y="20.7cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: here.Invoice_zGetPaymentTime()"> - payment_termXXX - </infostring> - - <infostring align="left" x="11.6cm" y="22cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Code comptable - </infostring> - <infostring align="left" x="11.6cm" y="21.4cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - No TVA intracom. - </infostring> - <infostring align="left" x="11.6cm" y="20.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Conditions d'escompte / Diskont / Discount. - </infostring> - <infostring align="left" x="14cm" y="22cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: code_comptable"> - CodeComptable XXX - </infostring> - <infostring align="left" x="14cm" y="21.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: eu_vat_code"> - NoTVAXXX - </infostring> - <infostring align="left" x="11.6cm" y="20.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: escompte_value"> - Escompte XXX - </infostring> - - - - <infostring align="left" x="18.9cm" y="24.2cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transporteur - </infostring> - <infostring align="left" x="18.6cm" y="24cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Carrier / Spediteur - </infostring> - <infostring align="center" x="19.5cm" y="23.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: delivery_mode"> - delivery_modeXXX - </infostring> - <infostring align="left" x="18.6cm" y="23cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transport - </infostring> - <infostring align="left" x="20cm" y="23cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 3 - </infostring> - <infostring align="left" x="18.6cm" y="22.1cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transaction - </infostring> - <infostring align="left" x="19.9cm" y="22.1cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 11 - </infostring> - <infostring align="left" x="18.6cm" y="21.2cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison - </infostring> - <infostring align="left" x="19.9cm" y="21.2cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: incoterm"> - incotermXXX - </infostring> - - <!-- Détail de la facture --> - <rectangle x="1cm" y="19.9cm" width="19.5cm" height="0.4cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="19.9cm" y2="19.9cm" width="1"/> - - <infostring align="left" x="2.8cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Dénomination des produits - </infostring> - <infostring align="left" x="10cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Répartition par tailles - </infostring> - <infostring align="left" x="15.4cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Quantité - </infostring> - <infostring align="left" x="17.1cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - P.U.H.T. - </infostring> - <infostring align="left" x="18.8cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - - <!-- Pied de facture --> - <rectangle x="1cm" y="5.0cm" width="19.5cm" height="0.8cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="5.8cm" y2="5.8cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="5.0cm" y2="5.0cm" width="1"/> - - <infostring align="left" x="1.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - <infostring align="left" x="3.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port taxable - </infostring> - <infostring align="left" x="6.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Montant taxable - </infostring> - <infostring align="left" x="9.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - T.V.A. - </infostring> - <tal:block tal:condition="python: vad_recoverable"> - <infostring align="left" x="9.3cm" y="5.1cm" size="9" - font="Helvetica" color="(0,0,0)" tal:content="python: '%.1f' % (vad_ratio * 100) + '%%'"> - 19,6%% - </infostring> - </tal:block> - <infostring align="left" x="11.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port - </infostring> - <infostring align="left" x="10.7cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - non taxable - </infostring> - <infostring align="left" x="13.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Net a payer - </infostring> - <infostring align="left" x="12.6cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Gesamtbetrag / Total amount - </infostring> - <infostring align="left" x="17.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Date d'echeance - </infostring> - <infostring align="left" x="17cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Falligkeitstag / Due date - </infostring> - - <infostring align="center" x="2.2cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % incomeHT"> - income XXX - </infostring> - <infostring align="center" x="3.8cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)"> - - </infostring> - <infostring align="left" x="6.5cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % income"> - - </infostring> - <tal:block tal:condition="python: vad_recoverable"> - <infostring align="center" x="9.7cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % vat"> - vat XXX - </infostring> - </tal:block> - <infostring align="left" x="10.7cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)"> - - </infostring> - <infostring align="center" x="13.8cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: '%.2f' % payable"> - payable XXX - </infostring> - <infostring align="center" x="16cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: resource_id"> - resource_id XXX - </infostring> - <infostring align="left" x="18cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: due_date.strftime('%e/%m/%y')"> - due_date XXX - </infostring> - - <infostring align="left" x="1.1cm" y="3.8cm" size="5" font="Helvetica" color="(0,0,0)"> - En application de la loi du 31/12/1992, nous vous précisons que la presente facture devra être réglée à la date indiquée ci-dessus. En cas de règlement comptant sous 10 jours, date de facture, l'escompte ci-dessus mentionné pourra être déduit du - </infostring> - <infostring align="left" x="1.1cm" y="3.5cm" size="5" font="Helvetica" color="(0,0,0)"> - montant H.T. de la facture, auquel cas le montant de TVA déductible par vous devra être diminué du montant de celle afférente à l'escompte. Son règlement donnera lieu au versement d'un intérêt moratoire, calculé sur les sommes restant - </infostring> - <infostring align="left" x="1.1cm" y="3.2cm" size="5" font="Helvetica" color="(0,0,0)"> - dues à cette date de règlement en principal, frais et taxes inclus, et au taux de l'intérêt légal majoré de 5 points, sans que cette pénalité puisse être en toute hypothèse inférieure à 1,5 fois le taux de l'intérêt légal. - </infostring> - <infostring align="left" x="10cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Répartition par tailles - </infostring> - <infostring align="left" x="15.4cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Quantité - </infostring> - <infostring align="left" x="17.1cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - P.U.H.T. - </infostring> - <infostring align="left" x="18.8cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - - <!-- Pied de facture --> - <rectangle x="1cm" y="5.0cm" width="19.5cm" height="0.8cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="5.8cm" y2="5.8cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="5.0cm" y2="5.0cm" width="1"/> - - </static> - - <frame id="content" - nextid="content" - x="1cm" - y="5.8cm" - width="19.5cm" - height="14.1cm" - leftpadding="0.1cm" - rightpadding="0.1cm" - toppadding="0.2cm" - bottompadding="0.5cm" - showBoundary="1"/> - </pagetemplate> - - - - - <pagetemplate id="SecondPage" nextid="SecondPage" startframe="content"> - <static> - - <!-- Entete CORAMY --> - <tal:block tal:condition="python: source_section_item[0] == 'Houvenaegel'" > - <infostring align="left" x="1.4cm" y="28.3cm" size="26" - font="Times-Bold" color="(0,0,0)">Houvenaegel</infostring> - <infostring align="left" x="2cm" y="27.4cm" size="26" - font="Times-Bold" color="(0,0,0)">Création</infostring> - </tal:block> - <tal:block tal:condition="python: source_section_item[0] == 'BLS'" > - <infostring align="left" x="2cm" y="27.7cm" size="60" - font="Times-Bold" color="(0,0,0)">BLS</infostring> - <infostring align="left" x="1.8cm" y="27.3cm" size="10" - font="Times-Bold" color="(0,0,0)">Beachwear License Services</infostring> - </tal:block> - <tal:block tal:condition="python: source_section_item[0] == 'Coramy'" > - <infostring align="left" x="1.4cm" y="28cm" size="40" - font="Times-Bold" color="(0,0,0)">Coramy</infostring> - </tal:block> - - - <rectangle x="1cm" y="28cm" width="0.3cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - <rectangle x="6.5cm" y="28cm" width="13.5cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - - <infostring align="left" x="7cm" y="28.5cm" size="8" - font="Helvetica" color="(0,0,0)" tal:content="python: '%s' % source_section_item[1]"> - 5 bis, rue Denis Cordonnier - F.59820 GRAVELINES - Tel. 33(0)3 28 51 91 51 - Fax 33(0)3 28 23 34 96 - </infostring> - <infostring align="left" x="10cm" y="28.1cm" size="8" - font="Helvetica" color="(1,1,1)" tal:content="python: '%s' % source_section_item[2]"> - MAILLOTS DE BAIN - GYM - SWIMSUITS - FITNESS - </infostring> - <infostring align="left" x="6.8cm" y="27.7cm" size="6" - font="Helvetica" color="(0,0,0)" tal:content="python: '%s' % source_section_item[3]"> - SAS capital de 435.200 EUR - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971 - </infostring> - - <!-- Titre du document (Facture n°) --> - <infostring align="left" x="6.8cm" y="26cm" size="16" - font="Helvetica-Bold" color="(0,0,0)" tal:content="python: 'Facture n° %s' % invoice_reference"> - Facture n° XXX - </infostring> - - <infostring align="left" x="14cm" y="26cm" size="8" - font="Helvetica" color="(0,0,0)" tal:content="python: start_date.strftime('Gravelines, le %e/%m/%y')"> - Gravelines, le XXX - </infostring> - - <infostring align="left" x="18.5cm" y="26cm" size="8" - font="Helvetica-Bold" color="(0,0,0)"> - Folio %(page)s - </infostring> - - - <!-- Grand cadre de la facture --> - <line x1="1cm" x2="20.5cm" y1="25cm" y2="25cm" width="1"/> - <line x1="1cm" x2="1cm" y1="25cm" y2="4cm" width="1"/> - <line x1="20.5cm" x2="20.5cm" y1="25cm" y2="4cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="4cm" y2="4cm" width="1"/> - - - <!-- Détail de la facture --> - <rectangle x="1cm" y="24.6cm" width="19.5cm" height="0.4cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="24.6cm" y2="24.6cm" width="1"/> - - <infostring align="left" x="2.8cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Dénomination des produits - </infostring> - <infostring align="left" x="10cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Répartition par tailles - </infostring> - <infostring align="left" x="15.4cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Quantité - </infostring> - <infostring align="left" x="17.1cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - P.U.H.T. - </infostring> - <infostring align="left" x="18.8cm" y="24.7cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - - <!-- Pied de facture --> - <rectangle x="1cm" y="5.0cm" width="19.5cm" height="0.8cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="5.8cm" y2="5.8cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="5.0cm" y2="5.0cm" width="1"/> - - <infostring align="left" x="1.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - <infostring align="left" x="3.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port taxable - </infostring> - <infostring align="left" x="6.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Montant taxable - </infostring> - <infostring align="left" x="9.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - T.V.A. - </infostring> - <tal:block tal:condition="python: vad_recoverable"> - <infostring align="left" x="9.3cm" y="5.1cm" size="9" - font="Helvetica" color="(0,0,0)" tal:content="python: '%.1f' % (vad_ratio * 100) + '%%'"> - 19,6%% - </infostring> - </tal:block> - <infostring align="left" x="11.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port - </infostring> - <infostring align="left" x="10.7cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - non taxable - </infostring> - <infostring align="left" x="13.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Net a payer - </infostring> - <infostring align="left" x="12.6cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Gesamtbetrag / Total amount - </infostring> - <infostring align="left" x="17.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Date d'echeance - </infostring> - <infostring align="left" x="17cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Falligkeitstag / Due date - </infostring> - - <infostring align="center" x="2.2cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % incomeHT"> - income XXX - </infostring> - - <infostring align="center" x="3.8cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)"> - - </infostring> - <infostring align="left" x="6.5cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % income"> - - </infostring> - <tal:block tal:condition="python: vad_recoverable"> - <infostring align="center" x="9.7cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % vat"> - vat XXX - </infostring> - </tal:block> - <infostring align="left" x="10.7cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)"> - - </infostring> - <infostring align="center" x="13.8cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: '%.2f' % payable"> - payable XXX - </infostring> - <infostring align="center" x="16cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: resource_id"> - resource_id XXX - </infostring> - <infostring align="left" x="18cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: due_date.strftime('%e/%m/%y')"> - due_date XXX - </infostring> - - <infostring align="left" x="1.1cm" y="3.8cm" size="5" font="Helvetica" color="(0,0,0)"> - En application de la loi du 31/12/1992, nous vous précisons que la présente facture devra être réglée à la date indiquée ci-dessus. En cas de règlement comptant sous 10 jours, date de facture, l'escompte ci-dessus mentionné pourra être déduit du - </infostring> - <infostring align="left" x="1.1cm" y="3.5cm" size="5" font="Helvetica" color="(0,0,0)"> - montant H.T. de la facture, auquel cas le montant de TVA déductible par vous devra être diminué du montant de celle afférente à l'escompte. Son règlement donnera lieu au versement d'un intérêt moratoire, calculé sur les sommes restant - </infostring> - <infostring align="left" x="1.1cm" y="3.2cm" size="5" font="Helvetica" color="(0,0,0)"> - dues à cette date de règlement en principal, frais et taxes inclus, et au taux de l'intérêt légal majoré de 5 points, sans que cette pénalité puisse être en toute hypothèse inférieure à 1,5 fois le taux de l'intérêt légal. - </infostring> - - </static> - - <frame id="content" - nextid="content" - x="1cm" - y="5.8cm" - width="19.5cm" - height="18.8cm" - leftpadding="0.1cm" - rightpadding="0.1cm" - toppadding="0.2cm" - bottompadding="0.5cm" - showBoundary="1"/> - </pagetemplate> - - - <pagetemplate id="TotalPage" > - <static> - - <infostring align="left" x="19cm" y="26cm" size="8" - font="Helvetica-Bold" color="(0,0,0)"> - %(page)s - </infostring> - </static> - </pagetemplate> - - - <pagetemplate id="Page" > - - <static> - - <infostring align="left" x="10cm" y= "28cm" size="10" - font="Helvetica" color="(0,0,0)">Page %(page)s</infostring> - - </static> - - <frame id="content" - nextid="content" - x="2cm" - y="1.5cm" - width="17cm" - height="25.5cm" - leftpadding="0.1cm" - rightpadding="0.1cm" - toppadding="0.5cm" - bottompadding="0.5cm" - showBoundary="1"/> - </pagetemplate> - - </tal:block> -</template> diff --git a/product/Coramy/skins/coramy_trade/default_pdf_template_save.pt b/product/Coramy/skins/coramy_trade/default_pdf_template_save.pt deleted file mode 100755 index 9a173a0156ae3125ece6d050f19e7f4800ee90f7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/default_pdf_template_save.pt +++ /dev/null @@ -1,525 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<template filename="default.pdf" - pagesize="A4" - landscape="0" - showboundary="0" - leftmargin="1cm" - rightmargin="1cm" - topmargin="1cm" - bottommargin="1cm" - allowsplitting="1" - tal:define="packing_list python:here.getCausalityValueList(portal_type=['Sale Packing List','Sales Packing List'])[0]; - invoice_id python:here.getId(); - resource_title python:here.getResourceTitle() or 'Euros'; - resource_id python:here.getResourceId() or 'EUR'; - income python: here.income; - vat python: here.vat; - payable python: here.payable;"> - <tal:block - tal:define="destination python: packing_list.getDestinationValue(); - destination_administration python: packing_list.getDestinationAdministrationValue() or packing_list.getDestinationSectionValue(); - start_date python:packing_list.getStartDate(); - packing_list_id python:packing_list.getId(); - order python:packing_list.getCausalityValueList(portal_type=['Sale Order','Sales Order'])[0];"> - - <stylesheet> - - <paragraphstyle name="Normal" fontname="Helvetica" fontsize="12" - align="LEFT" firstLineIndent="0"/> - <paragraphstyle name="Bullet" fontname="Helvetica" fontsize="12" - bulletFontName="Symbol" bulletFontSize="14" - leftIndent="20" firstLineIndent="0" - parent="Normal"/> - - <paragraphstyle name="Heading1" parent="Normal" - fontname="Helvetica-Bold" fontsize="16"/> - <paragraphstyle name="Heading2" parent="Normal" - fontname="Helvetica-Bold" fontsize="15"/> - <paragraphstyle name="Heading3" parent="Normal" - fontname="Helvetica-Bold" fontsize="14"/> - <paragraphstyle name="Heading4" parent="Normal" - fontname="Helvetica-Bold" fontsize="13"/> - <paragraphstyle name="Heading5" parent="Normal" - fontname="Helvetica-Bold" fontsize="12"/> - <paragraphstyle name="Heading6" parent="Normal" - fontname="Helvetica-Bold" fontsize="11"/> - <paragraphstyle name="Heading7" parent="Normal" - fontname="Helvetica-Bold" fontsize="10"/> - - <paragraphstyle name="Small" parent="Normal" fontname="Helvetica-Bold" - fontsize="7"/> - <paragraphstyle name="Cell" parent="Normal" fontname="Helvetica-Bold" - fontsize="12" - alignment="center" /> - <paragraphstyle name="CellHeading" parent="Normal" - fontname="Helvetica-Bold" fontsize="13" - alignment="center"/> - - <paragraphstyle name="Example" fontname="Courier-Oblique" fontsize="10" - parent="Normal"/> - - <paragraphstyle name="InvoiceItem" fontname="Courier-Oblique" - fontsize="10" - parent="Normal"/> - - <tablestyle name="StandardTable"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 3)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 7)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0.5, colors.black)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 1, colors.black)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 10)"/> - </tablestyle> - - <tablestyle name="HeadLine"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'LEFT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 8)"/> - <stylecmd expr="('BACKGROUND', (0,0), (-1,-1), colors.white)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="HeadLine2"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'LEFT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica', 6)"/> - <stylecmd expr="('BACKGROUND', (0,0), (-1,-1), colors.white)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="TotalLine"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('BOX', (0,0), (-1,-1), 0, colors.white)"/> - <stylecmd expr="('FONT', (0,0), (-1,-1), 'Helvetica-Oblique', 8)"/> - <stylecmd expr="('FONT', (-2,0), (-2,-1), 'Helvetica', 8)"/> - <stylecmd expr="('TEXTCOLOR', (0,0), (-1,-1), colors.black)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - <tablestyle name="CellTable"> - <stylecmd expr="('LEFTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('RIGHTPADDING', (0,0), (-1,-1), 5)"/> - <stylecmd expr="('TOPPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('BOTTOMPADDING', (0,0), (-1,-1), 1)"/> - <stylecmd expr="('ALIGN', (0,0), (1,-1), 'LEFT')"/> - <stylecmd expr="('ALIGN', (2,0), (-4,-1), 'CENTER')"/> - <stylecmd expr="('ALIGN', (-3,0), (-1,-1), 'RIGHT')"/> - <stylecmd expr="('GRID', (2,1), (-5,-1), 0.2, colors.black)"/> - <stylecmd expr="('BOX', (2,1), (-5,-1), 0.2, colors.black)"/> - <stylecmd expr="('FONT', (0,0), (-1,0), 'Helvetica', 6)"/> - <stylecmd expr="('FONT', (0,1), (-1,-1), 'Helvetica', 8)"/> - <stylecmd expr="('HALIGN', 'LEFT')"/> - </tablestyle> - - </stylesheet> - - <pagetemplate id="FirstPage" nextid="Page" startframe="content"> - <static> - - <!-- Entete CORAMY --> - <infostring align="left" x="1.4cm" y="28cm" size="40" - font="Times-Bold" color="(0,0,0)">Coramy</infostring> - - <rectangle x="1cm" y="28cm" width="0.3cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - <rectangle x="6.5cm" y="28cm" width="13.5cm" height="0.4cm" - linewidth="0.0" stroke="(1,1,1)" fill="(0.5,0.5,0.5)"/> - - <infostring align="left" x="7cm" y="28.5cm" size="8" - font="Helvetica" color="(0,0,0)"> - 5 bis, rue Denis Cordonnier - F.59820 GRAVELINES - Tel. 33(0)3 28 51 91 51 - Fax 33(0)3 28 23 34 96 - </infostring> - <infostring align="left" x="10cm" y="28.1cm" size="8" - font="Helvetica" color="(1,1,1)"> - MAILLOTS DE BAIN - GYM - SWIMSUITS - FITNESS - </infostring> - <infostring align="left" x="6.8cm" y="27.7cm" size="6" - font="Helvetica" color="(0,0,0)"> - SAS capital de 435.200 EUR - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971 - </infostring> - - <!-- Titre du document (Facture n°) --> - <infostring align="left" x="6.8cm" y="26cm" size="16" - font="Helvetica-Bold" color="(0,0,0)" tal:content="python: 'Facture n° %s' % invoice_id"> - Facture n° 105 915 - </infostring> - - <infostring align="left" x="14cm" y="26cm" size="8" - font="Helvetica" color="(0,0,0)" tal:content="python: start_date.strftime('Gravelines, le %e/%m/%y')"> - Gravelines, le 9/07/03 - </infostring> - - <infostring align="left" x="18.5cm" y="26cm" size="8" - font="Helvetica-Bold" color="(0,0,0)"> - Folio 1 - </infostring> - - <!-- Grand cadre de la fature --> - <line x1="1cm" x2="20.5cm" y1="25cm" y2="25cm" width="1"/> - <line x1="1cm" x2="1cm" y1="25cm" y2="4cm" width="1"/> - <line x1="20.5cm" x2="20.5cm" y1="25cm" y2="4cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="4cm" y2="4cm" width="1"/> - - <!-- Entete de facture --> - <!-- Quadrillage de l'entete de facture --> - <line x1="4.2cm" x2="4.2cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="11.4cm" x2="11.4cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="18.5cm" x2="18.5cm" y1="25cm" y2="20.3cm" width="1"/> - <line x1="4.2cm" x2="18.5cm" y1="22.3cm" y2="22.3cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="20.3cm" y2="20.3cm" width="1"/> - - <infostring align="left" x="1.8cm" y="24.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Commande No - </infostring> - <infostring align="left" x="1.5cm" y="24.5cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Auftrag Nr / Order No - </infostring> - <infostring align="center" x="2.5cm" y="24.2cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: order.getDestinationReference()"> - 7286007 - </infostring> - - <infostring align="left" x="1.7cm" y="23.8cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Confirmation No - </infostring> - <infostring align="left" x="1.8cm" y="23.6cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Bestätigung Nr - </infostring> - <infostring align="center" x="2.5cm" y="23.3cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: order.getId()"> - 119 022 - </infostring> - - <infostring align="left" x="1.1cm" y="22.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison No / Lieferschein Nr - </infostring> - <infostring align="left" x="1.8cm" y="22.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Delifery note No - </infostring> - <infostring align="center" x="2.5cm" y="22.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: packing_list_id"> - 108 301 - </infostring> - - <infostring align="left" x="1.1cm" y="21.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Nombre de colis - </infostring> - <infostring align="left" x="1.3cm" y="21.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Kolli anzahl - </infostring> - <infostring align="left" x="1.2cm" y="21.5cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Nb of parcels - </infostring> - <infostring align="left" x="3.5cm" y="21.7cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 32 - </infostring> - - <infostring align="left" x="1.1cm" y="21cm" size="6" font="Helvetica" color="(0,0,0)"> - Poids brut (kg) - </infostring> - <infostring align="left" x="1.2cm" y="20.8cm" size="6" font="Helvetica" color="(0,0,0)"> - Brutto-gewicht - </infostring> - <infostring align="left" x="1.3cm" y="20.6cm" size="6" font="Helvetica" color="(0,0,0)"> - Gross weight - </infostring> - - - <infostring align="left" x="6cm" y="24.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison / Versand / Delivery - </infostring> - <infostring align="left" x="4.4cm" y="24.3cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: destination.getTitle()"> - LA REDOUTE BERTHELOT - </infostring> - <tal:block tal:define="addr_list python: destination.getDefaultAddressText().split('\n')"> - <tal:block tal:repeat="addr_item addr_list"> - <tal:block tal:define="index repeat/addr_item/index"> - <infostring align="left" x="4.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:attributes="y python: '%fcm' % (23.9 - index * 0.4)" tal:content="addr_item"> - 119 CHAUSSEE BERTHELOT - </infostring> - </tal:block> - </tal:block> - </tal:block> - - - <infostring align="left" x="11.6cm" y="24.3cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: destination_administration.getTitle()"> - REDOUTE - </infostring> - <tal:block tal:define="addr_list python: destination_administration.getDefaultAddressText().split('\n')"> - <tal:block tal:repeat="addr_item addr_list"> - <tal:block tal:define="index repeat/addr_item/index"> - <infostring align="left" x="11.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:attributes="y python: '%fcm' % (23.9 - index * 0.4)" tal:content="addr_item"> - 119 CHAUSSEE BERTHELOT - </infostring> - </tal:block> - </tal:block> - </tal:block> - - - <infostring align="left" x="4.5cm" y="22cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Commercial - </infostring> - <infostring align="left" x="4.4cm" y="21.5cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Paiement - </infostring> - <infostring align="left" x="4.6cm" y="21.3cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Zahlung - </infostring> - <infostring align="left" x="4.5cm" y="21.1cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Payment - </infostring> - <infostring align="left" x="4.3cm" y="20.7cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Device / Currency / Wahrung - </infostring> - <infostring align="left" x="5.8cm" y="21.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - Cheque - </infostring> - <infostring align="left" x="5.8cm" y="21.1cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 20 jours Net - </infostring> - <infostring align="left" x="8.5cm" y="20.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: resource_title"> - Euros - </infostring> - <infostring align="left" x="10.2cm" y="20.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: resource_id"> - EUR - </infostring> - - - <infostring align="left" x="11.6cm" y="22cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Code comptable - </infostring> - <infostring align="left" x="11.6cm" y="21.4cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - No TVA intracom. - </infostring> - <infostring align="left" x="11.6cm" y="20.9cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Conditions d'escompte / Diskont / Discount. - </infostring> - <infostring align="left" x="14cm" y="22cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 41REDOU - </infostring> - <infostring align="left" x="11.6cm" y="20.6cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 2,75 sous 20 jours - </infostring> - - - <infostring align="left" x="18.9cm" y="24.6cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Port / Porto - </infostring> - <infostring align="left" x="19.1cm" y="24.4cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Freight - </infostring> - <infostring align="left" x="19cm" y="24cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - Franco - </infostring> - <infostring align="left" x="18.9cm" y="23.4cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transporteur - </infostring> - <infostring align="left" x="18.6cm" y="23.2cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Carrier / Spediteur - </infostring> - <infostring align="left" x="18.8cm" y="22.8cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - CORAMY - </infostring> - <infostring align="left" x="18.6cm" y="22cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transport - </infostring> - <infostring align="left" x="20cm" y="22cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 3 - </infostring> - <infostring align="left" x="18.6cm" y="21.4cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Transaction - </infostring> - <infostring align="left" x="19.9cm" y="21.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - 11 - </infostring> - <infostring align="left" x="18.6cm" y="20.8cm" size="6" font="Helvetica-Oblique" color="(0,0,0)"> - Livraison - </infostring> - - <!-- Détail de la facture --> - <rectangle x="1cm" y="19.9cm" width="19.5cm" height="0.4cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="19.9cm" y2="19.9cm" width="1"/> - - <infostring align="left" x="2.8cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Denomination des produits - </infostring> - <infostring align="left" x="10cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Repartition par tailles - </infostring> - <infostring align="left" x="15.4cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Quantite - </infostring> - <infostring align="left" x="17.1cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - P.U.H.T. - </infostring> - <infostring align="left" x="18.8cm" y="20cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - - <!-- Pied de facture --> - <rectangle x="1cm" y="5.0cm" width="19.5cm" height="0.8cm" - linewidth="0" fill="(0.75,0.75,0.75)"/> - <line x1="1cm" x2="20.5cm" y1="5.8cm" y2="5.8cm" width="1"/> - <line x1="1cm" x2="20.5cm" y1="5.0cm" y2="5.0cm" width="1"/> - - <infostring align="left" x="1.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Total H.T. - </infostring> - <infostring align="left" x="3.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port taxable - </infostring> - <infostring align="left" x="6.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Montant taxable - </infostring> - <infostring align="left" x="9.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - T.V.A. - </infostring> - <infostring align="left" x="9.3cm" y="5.1cm" size="9" - font="Helvetica" color="(0,0,0)"> - 19,6%% - </infostring> - <infostring align="left" x="11.2cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Port - </infostring> - <infostring align="left" x="10.7cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - non taxable - </infostring> - <infostring align="left" x="13.8cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Net a payer - </infostring> - <infostring align="left" x="12.6cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Gesamtbetrag / Total amount - </infostring> - <infostring align="left" x="17.5cm" y="5.5cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Date d'echeance - </infostring> - <infostring align="left" x="17cm" y="5.1cm" size="9" - font="Helvetica-Oblique" color="(0,0,0)"> - Falligkeitstag / Due date - </infostring> - - <infostring align="center" x="2.2cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % income.getSourceCredit()"> - 14 408,46 - </infostring> - <infostring align="left" x="6.5cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)"> - 14 408,46 - </infostring> - <infostring align="center" x="9.7cm" y="4.5cm" size="9" - font="Helvetica" color="(0,0,0)" - tal:content="python: '%.2f' % vat.getSourceCredit()"> - 2 824,06 - </infostring> - <infostring align="center" x="13.8cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: '%.2f' % payable.getSourceDebit()"> - 17 232,52 - </infostring> - <infostring align="center" x="16cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)" - tal:content="python: resource_id"> - EUR - </infostring> - <infostring align="left" x="18cm" y="4.5cm" size="10" - font="Helvetica-Bold" color="(0,0,0)"> - 31/07/03 - </infostring> - - <infostring align="left" x="1.1cm" y="3.8cm" size="5" font="Helvetica" color="(0,0,0)"> - En application de la loi du 31/12/1992, nous vous precisons que la presente facture devra etre reglee a la date indiquee ci-dessous. En cas de reglement comptant sous 10 jours, date de facture, l'escompte ci-dessus mentionne purra etre deduit du - </infostring> - <infostring align="left" x="1.1cm" y="3.5cm" size="5" font="Helvetica" color="(0,0,0)"> - montant H.T. de la facture, auquel cas le montant de TVA deductible par vous devra etre diminue du montant de celle afférente a l'escompte. Son règlement donnera lieu au versement d'un intérêt moratoire, calcule sur les sommes restant - </infostring> - <infostring align="left" x="1.1cm" y="3.2cm" size="5" font="Helvetica" color="(0,0,0)"> - dues a cette date de reglement en principal, frais et taxes inclus, et au taux de l'interet legal majore de 5 points, sans que cette penalite puisse etre en toute hypothese inferieure a 1,5 fois le taux de l'interet legal. - </infostring> - - <infostring align="left" x="1.6cm" y="2.7cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - Nos marchandises sont grevees d'une clause de reserve de propriete, reprise dans nos conditions generales de venteindiquees au verso - </infostring> - <infostring align="left" x="4.5cm" y="2.4cm" size="8" font="Helvetica-Bold" color="(0,0,0)"> - Allegemeine Verkaufsbedingungen auf ruckseite - General sales conditions overleaf - </infostring> - - </static> - - <frame id="content" - nextid="content" - x="1cm" - y="5.8cm" - width="19.5cm" - height="14.1cm" - leftpadding="0.1cm" - rightpadding="0.1cm" - toppadding="0.2cm" - bottompadding="0.5cm" - showBoundary="1"/> - </pagetemplate> - - <pagetemplate id="Page" > - - <static> - - <infostring align="left" x="10cm" y= "28cm" size="10" - font="Helvetica" color="(0,0,0)">Page %(page)s</infostring> - - </static> - - <frame id="content" - nextid="content" - x="2cm" - y="1.5cm" - width="17cm" - height="25.5cm" - leftpadding="0.1cm" - rightpadding="0.1cm" - toppadding="0.5cm" - bottompadding="0.5cm" - showBoundary="1"/> - </pagetemplate> - - </tal:block> -</template> diff --git a/product/Coramy/skins/coramy_trade/delivery_cell_view.form b/product/Coramy/skins/coramy_trade/delivery_cell_view.form deleted file mode 100755 index 34cc50f5c96786bb6efb7db98502215cc1737a15..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/delivery_cell_view.form +++ /dev/null @@ -1,221 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Cellule de livraison</title> - <row_length>4</row_length> - <name>delivery_cell_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Cellule</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'N\xb0 Lot'), ('resource_title', 'Produit'), ('getColoris', 'Coloris'), ('getRemainingQuantity', 'Quantit\xe9'), ('source_reference', 'R\xe9f\xe9rence Fournisseur'), ('bain_teinture', 'Bain de teinture'), ('getLaizeUtile', 'Laize utile'), ('getLocation', 'Emplacement')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">DeliveryCell_zGetItemList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Piece Tissu', 'Piece Tissu')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>piece_tissu_selection</selection_name> - <sort type="list">[('Id', 'Id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lots associées</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/delivery_line_quantity_view.form b/product/Coramy/skins/coramy_trade/delivery_line_quantity_view.form deleted file mode 100755 index c834c5a258b1ab24daab05db088f88836bbb2a1b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/delivery_line_quantity_view.form +++ /dev/null @@ -1,386 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title></title> - <row_length>4</row_length> - <name>transformed_resource_variation_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_variation_base_category_column</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en colonnes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_base_category_line</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Affichage en lignes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_variation_base_category_tab</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Affichage en tableaux</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('quantity', 'quantity'), ('destination_price', 'destination_price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('quantity', 'quantity'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list'), ('destination_price', 'destination_price')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>here/getColumnVariationRangeCategoryItemList</columns> - <lines>here/getLineVariationRangeCategoryItemList</lines> - <tabs>here/getTabVariationRangeCategoryItemList</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getMatrixVariationRangeBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['quantity', 'destination_price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_quantity</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>matrixbox_value</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_destination_price</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">6</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>matrixbox_value</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('destination_price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/delivery_line_view.form b/product/Coramy/skins/coramy_trade/delivery_line_view.form deleted file mode 100755 index 5f0f4bd404ecad5387596afcb2e2f89ad2498a42..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/delivery_line_view.form +++ /dev/null @@ -1,247 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>delivery_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Assortiment', 'Assortiment'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_coloris</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')] + here.getVariationRangeCategoryItemList(base_category_list=['coloris'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')] + here.getVariationRangeCategoryItemList(base_category_list=['taille'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité demandée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité livrée</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/echantillon_modeliste_sql_worklist.zsql b/product/Coramy/skins/coramy_trade/echantillon_modeliste_sql_worklist.zsql deleted file mode 100755 index 040959658a61d745fbd23b76da2c8ac98efc13dd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_modeliste_sql_worklist.zsql +++ /dev/null @@ -1,30 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:2000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT modele.id, ligne_cde.uid, ligne_cde.path, ligne_cde.relative_url, ligne_cde.parent_uid, ligne_cde.Description -FROM catalog AS ligne_cde, catalog AS modele, catalog AS commande, category AS cat1 -LEFT JOIN category AS cat2 -ON (cat2.uid=modele.uid -AND cat2.category_uid = <dtml-var "portal_categories.modele_origine.Reconduction.Cognis.uid">) -LEFT JOIN category AS cat3 -ON (cat3.uid=modele.uid -AND cat3.category_uid = <dtml-var "portal_categories.collection['2004'].Coramy.Planches.uid">) -WHERE ligne_cde.portal_type="Sample Order Line" -AND cat2.uid IS NULL -AND cat3.uid IS NULL -AND ligne_cde.uid=cat1.uid -AND commande.portal_type="Samples Order" -AND ligne_cde.parent_uid=commande.uid -AND commande.order_state='active' -AND modele.uid=cat1.category_uid -AND ( modele.modele_state="demande_etude" -OR modele.modele_state="prototypage" -OR modele.modele_state="brouillon" -OR modele.modele_state="etude_modelisme" ) \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/echantillon_modeliste_worklist.pt b/product/Coramy/skins/coramy_trade/echantillon_modeliste_worklist.pt deleted file mode 100755 index 54ba721442eec1eedac774dfe48646c4932b8481..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_modeliste_worklist.pt +++ /dev/null @@ -1,97 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="filtered_lines python:map((lambda x:x.getObject()),here.echantillon_modeliste_sql_worklist()); - ordered_lines python:here.sort_object_list(unordered_list=filtered_lines, - sort_order = (('resource', 'ASC'),('order_line_stop_date', 'ASC'),) ) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red">Modèles échantillonnés</font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Etat</b></i></td> - <td align=center><i><b>Origine</b></i></td> - <td align=center><i><b>Collection</b></i></td> - <td align=center><i><b>Rôles</b></i></td> - <td align=center><i><b>Date</b></i></td> - <td align=center><i><b>Clients</b></i></td> - </tr> - - <span tal:repeat="index python:range(len(ordered_lines))"> - <span tal:define="modele python:ordered_lines[index].getDefaultValue('destination',portal_type=['Organisation'])"> - - <tr> - <span tal:define="ref_modele python:ordered_lines[index-1].getResource()"> - <td> - <span tal:condition="python:ordered_lines[index].getResource()<>ref_modele" - tal:define="url_items python:modules['string'].split(ordered_lines[index].getResource(),'/')" - tal:content="python:url_items[len(url_items)-1]"/> - </td> - <td> - <span tal:condition="python:ordered_lines[index].getResource()<>ref_modele" - tal:content="python:ordered_lines[index].getOrderLineModeleState()"/> - </td> - <td> - <span tal:condition="python:ordered_lines[index].getResource()<>ref_modele" - tal:content="python:ordered_lines[index].getOrderLineModeleOrigine()"/> - </td> - <td> - <span tal:condition="python:ordered_lines[index].getResource()<>ref_modele" - tal:content="python:ordered_lines[index].getOrderLineModeleCollection()"/> - </td> - <td> - <span tal:condition="python:ordered_lines[index].getResource()<>ref_modele" - tal:content="python:ordered_lines[index].getOrderLineModeleLocalRoles()"/> - </td> - <td tal:content="python:ordered_lines[index].getOrderLineStopDate()"/> - <td tal:content="python:ordered_lines[index].getOrderLineClient()"/> - - </span> - </tr> - - </span> - </span> - - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/echantillon_page_count.py b/product/Coramy/skins/coramy_trade/echantillon_page_count.py deleted file mode 100755 index b06aed724fa61e62b15da426a8748b92d88359e4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_page_count.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "echantillon_page_count" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=total_nb, on_page -##title= -## -items_nb = float(total_nb) -items_in_page = float(on_page) -if items_nb/items_in_page==int(items_nb/items_in_page): - page_nb = items_nb/items_in_page -else : - page_nb = int(items_nb/items_in_page)+1 - -return page_nb diff --git a/product/Coramy/skins/coramy_trade/echantillon_page_list.py b/product/Coramy/skins/coramy_trade/echantillon_page_list.py deleted file mode 100755 index b387e893ec26a313bf5cedbe1f64d2f7ff3bc709..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_page_list.py +++ /dev/null @@ -1,50 +0,0 @@ -## Script (Python) "echantillon_page_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=ordered_lines_list, on_page -##title= -## -result = [] -compteur = 0 -nb_trous = 0 -if len(ordered_lines_list) == 0: - ref_theme="" -else : - ref_theme=ordered_lines_list[0].getTheme() -page_infos = [] - -for index in range(len(ordered_lines_list)) : - if ordered_lines_list[index].getTheme()<>ref_theme : - # enregistrement de la dernière page - result.append(page_infos) - # gestion de la nouvelle page - nb_trous += on_page-compteur - compteur = 0 - ref_theme = ordered_lines_list[index].getTheme() - # gestion de la ligne - page_infos = [ordered_lines_list[index].getTheme(), nb_trous, index] - compteur += 1 - - else : - if compteur == on_page : - # enregistrement de la dernière page - result.append(page_infos) - # gestion de la nouvelle page - nb_trous += on_page-compteur - compteur = 0 - ref_theme = ordered_lines_list[index].getTheme() - # gestion de la ligne - page_infos = [ordered_lines_list[index].getTheme(), nb_trous, index] - compteur += 1 - else : - # gestion de la ligne - page_infos = [ordered_lines_list[index].getTheme(), nb_trous, index] - compteur += 1 - -# ajout de la dernière page -result.append(page_infos) - -return result diff --git a/product/Coramy/skins/coramy_trade/echantillon_print.pt b/product/Coramy/skins/coramy_trade/echantillon_print.pt deleted file mode 100755 index fcc45ad0813e60fc7a3c6d52a48dc8e7029743c7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_print.pt +++ /dev/null @@ -1,191 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="echantillon"> - </head> - - <body tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - ordered_lines python:here.sort_object_list(unordered_list=lignes_cde, - sort_order = (('theme_index', 'ASC'),('sort_index', 'ASC'), ('resource', 'ASC'),) ); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - pages_list python:here.echantillon_page_list(ordered_lines,col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(len(pages_list))" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3" ><p align="center"> - Échantillonnage N° <span tal:content="here/getId"/> - - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(''),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"></span> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/>- - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription('')))"/> - </p> - </td> - </tr> - <tr> - <td colspan="3" class="Coramy" align="center"><span tal:content="python:pages_list[page_no][0]"/> - </td> - </tr> - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)-pages_list[page_no][1]),range(col_nb))"> - <td valign="top" align="center" width="50%" class="Border"> - <span tal:condition="python:j<=pages_list[page_no][2]"> - <span tal:define="ligne python:ordered_lines[j]"> - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'})"> - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele - </span> - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele - </span> - </span> - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition('')))"/> - <br> - - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="230" height="280" align="center" class="image" > - <span tal:repeat="coloris coloris_list" > - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" - height="280"/> - </span> - </td> - </tr> - </table> - <br> - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})" > - <table border="1" cellspacing="0" cellpadding="0" width="100%" > - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"></td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - </tr> - </span> - </table> - </span> - - - </span> - </span> - </span> - </span> - </td> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>CORAMY 5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - Fax : 03 28 23 34 96<br>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY - <br>Anyone who divulges this plan is rendering himself liable of legal proceedings</p> - </td> - <td></td> - </tr> - </table> - <span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span> - <span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/>- - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p> - </td> - <td></td> - <td></td> - <td></td> - </tr> - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele - </span> - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" - width="100%" /> - </span> - </td> - </tr> - </table> - </span> - </span> - - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p> - </td> - <td></td> - <td></td> - <td></td> - </tr> -</table> -</span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/echantillon_print2.pt b/product/Coramy/skins/coramy_trade/echantillon_print2.pt deleted file mode 100755 index 0d3996247b2b61b418e3be8dead47a06b16d44c3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_print2.pt +++ /dev/null @@ -1,188 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="echantillon"> - </head> - - <body tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - ordered_lines python:here.sort_object_list(unordered_list=lignes_cde, - sort_order = (('theme_index', 'ASC'),('sort_index', 'ASC'), ('resource', 'ASC'),) ); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - pages_list python:here.echantillon_page_list(ordered_lines,col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(len(pages_list))" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3"><p align="center"> - <span class="Coramy"><span tal:content="python:pages_list[page_no][0]"/></span> - <span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - Fax : 03 28 23 34 96</span> - <br>Échantillonnage N° <span tal:content="here/getId"/> - - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"></span> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/>- - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/> - <br> <br></p> - </td> - <td></td> - <td></td> - </tr> - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)-pages_list[page_no][1]),range(col_nb))"> - <td valign="top" align="center" width="50%" class="Border"> - <span tal:condition="python:j<=pages_list[page_no][2]"> - <span tal:define="ligne python:ordered_lines[j]"> - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'})"> - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele - </span> - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele - </span> - </span> - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="230" height="280" align="center" valign="top"> - <img src="space.png" width="1" height="230"> - <span tal:repeat="coloris coloris_list"> - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"/> - </span> - </td> - </tr> - </table> - <br> - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"></td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"></td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - </tr> - </span> - </table> - </span> - </span> - </span> - </span> - </span> - </td> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY - <br>Anyone who divulges this plan is rendering himself liable of legal proceedings</p> - </td> - <td></td> - </tr> - </table> - <span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span> - <span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/>- - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p> - </td> - <td></td> - <td></td> - <td></td> - </tr> - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele - </span> - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <img tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" - width="100%" /> - </span> - </td> - </tr> - </table> - </span> - </span> - - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p> - </td> - <td></td> - <td></td> - <td></td> - </tr> -</table> -</span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/echantillon_print3.pt b/product/Coramy/skins/coramy_trade/echantillon_print3.pt deleted file mode 100755 index e6c773af9d89b054b6e5a899fb50eb151ff20a04..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_print3.pt +++ /dev/null @@ -1,210 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> -<link rel=stylesheet type="text/css" href="echantillon"> - - - </head> - - <body - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="50%" class="Border" tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele</span> - - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele</span> - </span> - - - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="280" height="280" align="center" valign="top"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - <br> - - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"> - </td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" -tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - - </td> - - </tr> - - </span> - </table> - </span> - - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td> - </tr> - - - </table> -<span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele</span> - - - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td><td></td><td></td> - </tr> - - - </table></span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/echantillon_test.py b/product/Coramy/skins/coramy_trade/echantillon_test.py deleted file mode 100755 index 013ab8d1be6e411450df4161d6f5ed5f12a979d4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/echantillon_test.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "echantillon_test" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -#lines_list = context.echantillon_modeliste_sql_worklist() -new_list = map((lambda x:x.getObject()),context.echantillon_modeliste_sql_worklist()) -for item in new_list: - if item == None: - print 'erreur' - -return printed diff --git a/product/Coramy/skins/coramy_trade/filtered_sample_order_lines.py b/product/Coramy/skins/coramy_trade/filtered_sample_order_lines.py deleted file mode 100755 index fb0fa4913e297cfe0f13a62b64d1c8655932b8f5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/filtered_sample_order_lines.py +++ /dev/null @@ -1,33 +0,0 @@ -## Script (Python) "filtered_sample_order_lines" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -filtered_models = {} -filtered_dates = {} -lines_list = context.sample_order_line_search() - -for line in lines_list : - line_object = line.getObject() - if line_object <> None : - order = line_object.aq_parent - client = order.getDefaultValue('destination',portal_type=['Organisation']) - modele = line_object.getDefaultValue('resource',portal_type=['Modele']) - if modele <>None : - etat_modele = modele.portal_workflow.getInfoFor(modele, 'modele_state') - if etat_modele=='demande_etude' or etat_modele=='etude_modelisme' or etat_modele=='prototypage' or etat_modele=='brouillon': - if not filtered_models.has_key(modele.getId()) : - filtered_models[modele.getId()] = {} - filtered_models[modele.getId()]['date'] = order.getStopDate() - filtered_models[modele.getId()]['client'] = str(client.getTitle()) - filtered_models[modele.getId()]['etat'] = modele.portal_workflow.getInfoFor(modele, 'modele_state') - else : - filtered_models[modele.getId()]['client'] = filtered_models[modele.getId()]['client']+', '+str(client.getTitle()) - if filtered_models[modele.getId()]['date'] > order.getStopDate() : - filtered_models[modele.getId()]['date'] = order.getStopDate() - -return filtered_models diff --git a/product/Coramy/skins/coramy_trade/find_delivery_lines_sql_order_list.zsql b/product/Coramy/skins/coramy_trade/find_delivery_lines_sql_order_list.zsql deleted file mode 100755 index a9ccd98fb3ba7757a099fc695deb58b5815910a9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/find_delivery_lines_sql_order_list.zsql +++ /dev/null @@ -1,28 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:0 -max_cache:0 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>order_list</params> -SELECT livraison.id, livraison.path, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_livr, catalog AS commande, catalog AS livraison, movement, category -WHERE commande.portal_type="Samples Order" -AND ligne_livr.parent_uid=livraison.uid -AND ligne_livr.portal_type="Delivery Line" -AND movement.uid=ligne_livr.uid -AND livraison.uid=category.uid -AND commande.uid=category.category_uid -AND category.base_category_uid=<dtml-var "portal_categories.causality.uid"> -AND livraison.portal_type="Samples Packing List" -AND livraison.delivery_state="expediee" -AND (commande.id = "<dtml-var expr="order_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(order_list)-1)"> -OR commande.id = "<dtml-var expr="order_list[loop_item+1]">" -</dtml-in> -) -GROUP BY livraison.id -ORDER BY livraison.id diff --git a/product/Coramy/skins/coramy_trade/find_order_lines_sql_order_list.zsql b/product/Coramy/skins/coramy_trade/find_order_lines_sql_order_list.zsql deleted file mode 100755 index ef5401e3e4e88cddb02a288d09501345bb975428..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/find_order_lines_sql_order_list.zsql +++ /dev/null @@ -1,23 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:0 -max_cache:0 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>order_list</params> -SELECT commande.id, commande.default_destination_title, commande.path, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_cde, catalog AS commande, movement -WHERE commande.portal_type="Samples Order" -AND ligne_cde.parent_uid=commande.uid -AND ligne_cde.portal_type="Sample Order Line" -AND movement.uid=ligne_cde.uid -AND (commande.id = "<dtml-var expr="order_list[0]">" -<dtml-in prefix="loop" expr="_.range(_.len(order_list)-1)"> -OR commande.id = "<dtml-var expr="order_list[loop_item+1]">" -</dtml-in> -) -GROUP BY commande.id -ORDER BY commande.id diff --git a/product/Coramy/skins/coramy_trade/first_list_item_add.py b/product/Coramy/skins/coramy_trade/first_list_item_add.py deleted file mode 100755 index c814e08982ba95690c8b1843d6915d7ad340ceaa..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/first_list_item_add.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "first_list_item_add" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=grand_total,to_add=0 -##title= -## -grand_total[0] = grand_total[0]+to_add diff --git a/product/Coramy/skins/coramy_trade/gallop_print.pt b/product/Coramy/skins/coramy_trade/gallop_print.pt deleted file mode 100755 index d812d0a203a173f77f6ef87367a8b8b5b04bf876..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/gallop_print.pt +++ /dev/null @@ -1,97 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="gallop"> - </HEAD> - <BODY - tal:define="vetement_list python:here.getValueList('specialise',portal_type=['Vetement']); - forme python:here.getDefaultValue('specialise',portal_type=['Forme']); - variantes_coloris_list python:here.sort_object_list(unordered_list=here.contentValues(filter={'portal_type':'Variante Modele'}), - sort_order = (('prototype', 'DESC'),('id', 'ASC'),) ); - dessins_list python:here.bareme_mesures_dessins_list(); - correspondance_tailles python:here.getDefaultValue('specialise',portal_type=['Correspondance Tailles']); - correspondance_mesures python:here.getDefaultValue('specialise',portal_type=['Correspondance Mesures']); - col_nb python:3; - lin_nb python:3; - nb_coloris python:len(variantes_coloris_list); - "> - <TABLE width="660" height="955" cellpadding="0" cellspacing="0"> - <TR> - <TD colspan="2"><!-- Entete --> - <TABLE width="100%"> - <TR> - <TD class="Titre" width="30%"><p tal:repeat="eip here/getEipList"><span tal:replace="eip"></span></p></TD> - <TD width="30%"> </TD> - <TD width="40%" class="Client" tal:content="here/getDefaultDestinationTitle">Client</TD> - </TR> - <TR> - <TD></TD> - <TD class="Titre" tal:content="here/getDestinationReference">ref client</TD> - <TD></TD> - </TR> - </TABLE><br> - </TD> - </TR> - <TR> - <TD width="50%" valign="top"><!-- Tailles & composition --> - <br><br><br> - <SPAN tal:repeat="vetement vetement_list"> - <TABLE border="1" width="100%" tal:define="tailles python:vetement.bareme_mesures_tailles_list(correspondance_tailles)"> - <TR class="Titre2"> - <TD tal:attributes="colspan python:len(tailles[1])"><b>SIZES</b></TD> - </TR> - <TR> - <TD tal:repeat="index python:range(len(tailles[1]))" - tal:content="python:tailles[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - </TR> - </TABLE><br><br> - <TABLE border="1" width="100%" tal:define="tailles python:vetement.bareme_mesures_tailles_list(correspondance_tailles)"> - <TR class="Titre2"> - <TD><b>COMPOSITION</b></TD> - </TR> - <TR> - <TD tal:content="here/getComposition"></TD> - </TR> - </TABLE><br><br> - <TABLE border="1" width="100%"> - <TR class="Titre2"> - <TD><b>DESCRIPTION</b></TD> - </TR> - <TR> - <TD tal:content="here/getDescription"></TD> - </TR> - </TABLE> - </SPAN> - </TD> - <TD align="center"><!-- Col. principal, prototype --> - <img src="" - tal:attributes="src python:'%s?display=small&format=jpeg&resolution=300' % variantes_coloris_list[0].getPath()" /><br> - <span class="Compo" tal:content="python:variantes_coloris_list[0].getDestinationReference()" /> - </TD> - </TR> - <TR> - <TD colspan="2"><!-- Autres coloris --> - <TABLE width="100%"> - <SPAN tal:repeat="i python:range(lin_nb)"> - <TR > - <SPAN tal:repeat="j python:range(col_nb)"> - <SPAN tal:condition="python:(i*col_nb)+j+1<nb_coloris"> - <TD align="center" tal:define="variante_coloris python:variantes_coloris_list[(i*col_nb)+j+1]"> - <img src="" - tal:attributes="src python:'%s?display=small&format=jpeg&resolution=150' % variante_coloris.getPath()" width="35%"/><br> - <span class="Compo" tal:content="python:variante_coloris.getDestinationReference()" /> - </TD> - </SPAN> - </SPAN> - </TR> - </SPAN> - </TABLE> - </TD> - </TR> - <TR height="100%"> - <TD/> - </TR> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_trade/getDeliveryCellPrintList.py b/product/Coramy/skins/coramy_trade/getDeliveryCellPrintList.py deleted file mode 100755 index 5bf91dd751f441ed29e613302a6d8e25b1df884f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getDeliveryCellPrintList.py +++ /dev/null @@ -1,89 +0,0 @@ -## Script (Python) "getDeliveryCellPrintList" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -order_line = context -resource = order_line.getResourceValue() -movement_list = [] -pretty_list = [] - -if resource <> None : - - if order_line.hasCellContent() : - movement_list = order_line.contentValues(filter={'portal_type':'Delivery Cell'}) - else : - movement_list.append(order_line) - - for movement in movement_list : - - my_variation_base_category_list = movement.getVariationBaseCategoryList() - if 'coloris' in my_variation_base_category_list : - if len(movement.getColorisValueList()) > 0 : - variante_object = movement.getColorisValueList()[0] - else : - variante_object = None - elif 'variante' in my_variation_base_category_list : - if len(movement.getVarianteValue()) > 0 : - variante_object = movement.getVarianteValueList()[0] - else : - variante_object = None - else : - variante_object = None - - if variante_object <> None: - if variante_object.getSourceReference() in (None, '', 'None'): - line_source_reference = resource.getSourceReference() - else : - if resource.getSourceReference() in (None, '', 'None'): - line_source_reference = variante_object.getSourceReference() - else: - line_source_reference = "%s %s" % (resource.getSourceReference(), variante_object.getSourceReference()) - else : - line_source_reference = resource.getSourceReference() - - line_resource = resource.getId() - line_designation = resource.getDescription() - line_variantes = movement.getVariationCategoryList() - try : - if order_line.getPortalType() == 'Production Packing List Line' : - line_quantity = float(movement.getProperty(key='target_quantity')) - else : - line_quantity = float(movement.getProperty(key='quantity')) - except : - line_quantity = 0 - try : - line_price = float(movement.getProperty(key='price')) - except : - line_price = 0 - - if order_line.getQuantityUnit() <> None : - unit_items = order_line.getQuantityUnit().split('/') - line_unit = unit_items[len(unit_items)-1] - else : - line_unit = '' - - line_date = order_line.aq_parent.getTargetStartDate() - - line_total = line_quantity*line_price - - if resource.getPortalType() == 'Composant' : - line_type = resource.getTypeComposant() - elif resource.getPortalType() == 'Tissu' : - line_type = resource.getMotif() - else : - line_type = ' ' - - try : - line_source = resource.getSourceTitle() - except : - line_source = ' ' - - line_items = [line_source_reference,line_resource,line_designation,line_variantes,line_quantity,line_unit,line_price,line_total,line_date,line_type,line_source] - pretty_list.append(line_items) - -return pretty_list diff --git a/product/Coramy/skins/coramy_trade/getDeliveryCellResourceSourceTitle.py b/product/Coramy/skins/coramy_trade/getDeliveryCellResourceSourceTitle.py deleted file mode 100755 index 1ceedd53d6272770b6ad34f6b9e43029a19eedd0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getDeliveryCellResourceSourceTitle.py +++ /dev/null @@ -1,25 +0,0 @@ -## Script (Python) "getDeliveryCellResourceSourceTitle" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -cell = context - -try : - resource = cell.getResourceValue() -except : - resource = None - -if resource is not None : - try : - source_title = resource.getDefaultSourceTitle() - except : - source_title = '' -else : - source_title = '' - -return source_title diff --git a/product/Coramy/skins/coramy_trade/getOrderLineClient.py b/product/Coramy/skins/coramy_trade/getOrderLineClient.py deleted file mode 100755 index b3034e00760c59a2e636d08f7f347489e5007c23..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineClient.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineClient" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - order = context.aq_parent - result = order.getDefaultValue('destination',portal_type=['Organisation']).getTitle() -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineModeleCollection.py b/product/Coramy/skins/coramy_trade/getOrderLineModeleCollection.py deleted file mode 100755 index bbd9a3e16cb74aee7f586c6d6936469844ad9328..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineModeleCollection.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineModeleCollection" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - modele = context.getDefaultValue('resource',portal_type=['Modele']) - result = modele.getCollection() -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineModeleLocalRoles.py b/product/Coramy/skins/coramy_trade/getOrderLineModeleLocalRoles.py deleted file mode 100755 index 38f71a4cef5c33950fe9f697de0dfdd5a755eea1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineModeleLocalRoles.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineModeleLocalRoles" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - modele = context.getDefaultValue('resource',portal_type=['Modele']) - result = modele.modele_show_local_roles() -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineModeleOrigine.py b/product/Coramy/skins/coramy_trade/getOrderLineModeleOrigine.py deleted file mode 100755 index 01ced9841a91ae83f29063f4bcedcdf3b115f963..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineModeleOrigine.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineModeleOrigine" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - modele = context.getDefaultValue('resource',portal_type=['Modele']) - result = modele.getModeleOrigine() -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineModeleState.py b/product/Coramy/skins/coramy_trade/getOrderLineModeleState.py deleted file mode 100755 index 40a978a37d18f0fc422cdbcd6c2c956a6fa2b173..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineModeleState.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineModeleState" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - modele = context.getDefaultValue('resource',portal_type=['Modele']) - result = modele.portal_workflow.getInfoFor(modele, 'modele_state') -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineStopDate.py b/product/Coramy/skins/coramy_trade/getOrderLineStopDate.py deleted file mode 100755 index 1f1b84c110fd617a0c8c5a201b878f7a52cabd62..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineStopDate.py +++ /dev/null @@ -1,16 +0,0 @@ -## Script (Python) "getOrderLineStopDate" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - order = context.aq_parent - result = order.getStopDate() -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderLineTransformationState.py b/product/Coramy/skins/coramy_trade/getOrderLineTransformationState.py deleted file mode 100755 index 37a41c4427ce2090a7235dd1ca963450b4d32155..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderLineTransformationState.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "getOrderLineTransformationState" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try: - modele = context.getDefaultValue('resource',portal_type=['Modele']) - transformation = modele.modele_transformation() - result = transformation.portal_workflow.getInfoFor(transformation, 'transform_state') -except: - result = '' - -return result diff --git a/product/Coramy/skins/coramy_trade/getOrderPrettyTotalQuantity.py b/product/Coramy/skins/coramy_trade/getOrderPrettyTotalQuantity.py deleted file mode 100755 index 8b87deed2e02068e15169f319be43e9ea21c9c6e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getOrderPrettyTotalQuantity.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "getOrderPrettyTotalQuantity" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -try : - order = context - sql_result = order.order_sql_totalizer(order_id=order.getId(),order_type=order.getPortalType()) - result = 'Quantité totale : '+str(sql_result[0].quantity) -except : - result = 'Quantité totale : ' - -return result diff --git a/product/Coramy/skins/coramy_trade/getPurchaseDeliveryCellSourceReference.py b/product/Coramy/skins/coramy_trade/getPurchaseDeliveryCellSourceReference.py deleted file mode 100755 index 8172afbed9518b459b9513eae3eb8a211349b172..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/getPurchaseDeliveryCellSourceReference.py +++ /dev/null @@ -1,33 +0,0 @@ -## Script (Python) "getPurchaseDeliveryCellSourceReference" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -cell = context - -try : - variante = cell.getVarianteValue() -except : - variante = None - -if variante is None : - try : - variante = cell.getColorisValue() - except : - variante = None - -if variante is not None and variante.getSourceReference() is not None and variante.getSourceReference() <> '': - return variante.getSourceReference() -else : - try : - resource = cell.getResourceValue() - except : - resource = None - if resource is not None : - return resource.getSourceReference() - else : - return '' diff --git a/product/Coramy/skins/coramy_trade/invoice_transaction_print.pt b/product/Coramy/skins/coramy_trade/invoice_transaction_print.pt deleted file mode 100755 index c1be99b88e6ab6f5b0efeae84d02ae09f9d637f3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/invoice_transaction_print.pt +++ /dev/null @@ -1,182 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Nexedi</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="packing_list_list python:here.getCausalityValueList(portal_type=['Sale Packing List','Sales Packing List']); - from_organisation python:here.restrictedTraverse('organisation/nexedi'); - client_invoice python:here.getDefaultValue('destination_section',spec=['Organisation', 'Person']); - client_delivery python:here.getDefaultValue('destination_section',spec=['Organisation', 'Person']); - total_price python:here.getDefaultTotalPrice()"> - - - <table width=100%> - <tr> - <td colspan=3><img src="logo.png"></td> - </tr> - <tr> - <td align=left tal:content="python: from_organisation.getCorporateName()" colspan="2" /> - <td align=right tal:content="python: 'Invoice Date: %s' % here.getStartDate()"/> - </tr> - <tr> - <td align=left tal:content="python: 'Tel : %s' % from_organisation.getDefaultTelephone().asText()" colspan="2"/> - <td align=right tal:content="python: 'Pay Before: %s' % here.getStopDate()"/> - </tr> - <tr> - <td tal:content="python: from_organisation.getDefaultAddress().getStreetAddress()" colspan="2"/> - <td align=right tal:content="python: 'Invoice N¡ë: %s' % here.getId()"/> - </tr> - <tr> - <td tal:content="python: '%s %s' % - (from_organisation.getDefaultAddress().getZipCode(), - from_organisation.getDefaultAddress().getCity())" colspan="3"/> - </tr> - - <tr> - <th colspan=3> - <h2>INVOICE</h2> - </th> - </tr> - - </table> - - <br/> - - <table width=100%> - <tr bgcolor=000000> - <th align=left><font color=ffffff>INVOICE ADDRESS</th> - <th align=left><font color=ffffff>DELIVERY ADDRESS</th> - </tr> - - <tr> - <td align=left tal:content="client_invoice/getCorporateName | client_invoice/getTitle"/> - <td align=left tal:content="client_delivery/getCorporateName | client_delivery/getTitle"/> - </tr> - <tr> - <td align=left tal:content="python: client_invoice.getDefaultAddress().getStreetAddress()"/> - <td align=left tal:content="python: client_delivery.getDefaultAddress().getStreetAddress()"/> - </tr> - <tr> - <td align=left tal:content="python: '%s %s' % - (client_invoice.getDefaultAddress().getZipCode(), - client_invoice.getDefaultAddress().getCity())"/> - <td align=left tal:content="python: '%s %s' % - (client_delivery.getDefaultAddress().getZipCode(), - client_delivery.getDefaultAddress().getCity())"/> - </tr> - </table> - - <br/> - - <span tal:define="global movement_list python:[]" /> - <span tal:repeat="packing_list python:packing_list_list[0:2]"> - <span tal:define="dummy python:movement_list.extend(packing_list.getMovementList())" /> - </span> - <span tal:define="group_list python: here.collectMovement(movement_list)" - tal:repeat="group group_list"> - <table width='100%'> - <tr bgcolor='#000000'> - <th align=left nowrap><font color='#ffffff'>Title</font></th> - <th align=left nowrap><font color='#ffffff'>Total Quantity</font></th> - <th align=left nowrap><font color='#ffffff'>Total Price</font></th> - </tr> - <tr valign=top> - <td align=left tal:content="python: group.getResourceTitle()"></td> - <td align=left tal:content="python: '%.0f' % group.getTotalQuantity()"></td> - <td align=left tal:content="python: '%.0f' % group.getTotalPrice()"></td> - </tr> - </table> - <span tal:define="cell_range_list python:group.getMatrix().getCellRange()"> - <table width='80%'> - <tr> - <td> </td> - <span tal:define="cell_x_range python:cell_range_list[0]" - tal:repeat="x cell_x_range"> - <td align=left tal:content="python:x"></td> - </span> - </tr> - <span tal:define="cell_y_range python:cell_range_list[1]" - tal:repeat="y cell_y_range"> - <tr> - <td align=left tal:content="python: y"></td> - <span tal:define="cell_x_range python:cell_range_list[0]" - tal:repeat="x cell_x_range"> - <td align=left><span tal:condition="python:group.getMatrix().getCell(x, y, base_id='cell') is not None"> - <span tal:replace="python: '%.0f' % group.getMatrix().getCell(x, y, base_id='cell').getQuantity()"/></span></td> - </span> - </tr> - </span> - </table> - </span> - </span> -<!-- - <tr bgcolor=000000> - <th align=left nowrap><font color=ffffff>N¡ë</font></th> - <th align=left nowrap><font color=ffffff>Description</font></th> - <th nowrap><font color=ffffff>Quantity</th> - <th nowrap><font color=ffffff>Unit</font></th> - <th nowrap><font color=ffffff>Unit Price</font></th> - <th nowrap><font color=ffffff>Total Price</font></th> - </tr> - <span tal:define="ordered_lines python:packing_list.contentValues(filter={'meta_type':'ERP5 Delivery Line'})" - tal:repeat="ligne ordered_lines"> - <tr valign=top tal:condition="python:ligne.getQuantity()>0"> - - <td align=left tal:content="python:ligne.getId()"></td> - - <td tal:content="python: ligne.getResourceTitle()"></td> - <td align=right tal:content="python: '%.0f' % ligne.getQuantity()"></td> - <td>n/a</td> - <td align=right tal:content="python: '%.0f' % ligne.getPrice()"></td> - <td align=right tal:content="python: '%.0f' % ligne.getTotalPrice()"></td> - </tr> - </span> - <tr> - <td colspan=6><hr noshade></td> - </tr> - <tr> - <th colspan=4 align=right>Total</th> - <td colspan=2 align=right tal:content="here/l1/getSourceCredit"></td> - </tr> - <tr> - <th colspan=4 align=right>TVA 19.6 %</th> - <td colspan=2 align=right tal:content="here/l2/getSourceCredit"></td> - </tr> - <tr> - <td colspan=3> </td> - <td colspan=3><hr noshade></td> - </tr> - <tr> - <td colspan=3>A r«±çler dans <b>0</b> jours au plus tard. - <br><font size="-3">Conditions de r«±çlement: par ch«²ñue, «¢ 0 jours date de la facture. Paiement accept«± en euros. - Tout retard de r«²çlement donnera lieu «¢ une p«±îalit«± de 1,5% du montant d«å par mois. - R«±óerve de propri«±ô«±º nous conservons la pleine propri«±ô«± des marchandises jusqu'au paiement int«±çral du prix, des taxes et accessoires.</font></td> - - <th colspan=1 align=right nowrap>Somme «¢ r«±çler</th> - <th colspan=2 align=right tal:content="here/l0/getSourceDebit"></th> - </tr> - <tr> - <td> </td> - </tr> - </table> ---> - <table width="100%"> - <tr> - <td><center><h6>RCS Roubaix Tourcoing 440 047 504<br> - Banque: 30027 Guichet: 00039 Compte: 00000013323 RIB: 36<br>IBAN: FR76 3002 7175 3900 0410 2760 135<br> - VAT FR72440047504</h6></center></td> - </tr> - </table> - - - -</body> - -</html> - diff --git a/product/Coramy/skins/coramy_trade/item_by_ean13_code_sql_search.zsql b/product/Coramy/skins/coramy_trade/item_by_ean13_code_sql_search.zsql deleted file mode 100755 index 4858967eaf6cc8c08d70e8c6520d6501453ed453..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/item_by_ean13_code_sql_search.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>organisation_ean -portal_type</params> -SELECT DISTINCT id, relative_url, path, Description - -FROM catalog -WHERE portal_type = "<dtml-var portal_type>" -AND ean13_code = "<dtml-var organisation_ean>" - diff --git a/product/Coramy/skins/coramy_trade/item_by_title_sql_search.zsql b/product/Coramy/skins/coramy_trade/item_by_title_sql_search.zsql deleted file mode 100755 index 4a3a7a26ab82ae8b4e4688cc4d85587ab1e9cffb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/item_by_title_sql_search.zsql +++ /dev/null @@ -1,16 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>title -portal_type</params> -SELECT DISTINCT id, relative_url, path, Description - -FROM catalog -WHERE portal_type = "<dtml-var portal_type>" -AND Title = "<dtml-var title>" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/lookup_delivery_price.py b/product/Coramy/skins/coramy_trade/lookup_delivery_price.py deleted file mode 100755 index 6726da1395e1d80137a7cc2b66a5b21afc354281..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/lookup_delivery_price.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "lookup_delivery_price" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return 2.0 diff --git a/product/Coramy/skins/coramy_trade/lookup_order_price.py b/product/Coramy/skins/coramy_trade/lookup_order_price.py deleted file mode 100755 index 2fafae1b391c74401dd4ce92587f1e6b393be9d9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/lookup_order_price.py +++ /dev/null @@ -1,10 +0,0 @@ -## Script (Python) "lookup_order_price" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -return 1.0 diff --git a/product/Coramy/skins/coramy_trade/noir_print.pt b/product/Coramy/skins/coramy_trade/noir_print.pt deleted file mode 100755 index 99838f3f004c923c951f05e2e126535da475450b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/noir_print.pt +++ /dev/null @@ -1,213 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> -<link rel=stylesheet type="text/css" href="Echantillon2.css"> - - - </head> - - <body - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:2; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="3" class="Theme"><p align="center"> - <span class="Theme">Coramy</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="50%" class="Border" tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele</span> - - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele</span> - </span> - - - <br> - <table border="0" cellpadding="0" cellspacing="0" width="100%"> - <tr align="left"> - <td width="1"><img src="spacer" width="1" height="38"></td> - <td align="center"><span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br></td> - </tr> - <tr> - <td width="1"><img src="spacer" width="1" height="280"></td> - <td width="280" height="280" align="center" valign="top"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=150'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - <br> - - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"> - </td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" -tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - - </td> - - </tr> - - </span> - </table> - </span> - - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="2" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td> - </tr> - - - </table> -<span tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:4; - lin_nb python:5; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> - - <table tal:repeat="page_no python:range(nb_pages)" class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - <tr> - <td colspan="4"><p align="center"> - <span class="Coramy">Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br> <br></p></td> - <td></td> - <td></td> - <td></td> - - </tr> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="25%" class="Border" nowrap tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="python:url_items1[len(url_items1)-1]">modele</span> - - - <br> <br> - <table border="0" cellpadding="0" cellspacing="0"> - <tr> - <td width="90" height="90" align="center" valign="center"> - <span tal:repeat="coloris coloris_list"> - <span tal:condition="python:coloris.getRelativeUrl()==ligne.getColoris()"> - <img tal:condition="python:coloris.width()>=coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" width="100%"/> - <img tal:condition="python:coloris.width()<coloris.height()" - src="" tal:attributes="src python:coloris.absolute_url() + '?display=small&format=jpeg&resolution=100'" height="100%"/> - </span> - </span> - </td> - </tr> - </table> - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - <tr> - <td colspan="4" align="center" class="Entete"><p>© Coramy - All rights reserved<br>This document is the confidential property of CORAMY<br>Anyone who divulges this plan is rendering - himself liable of legal proceedings</p></td> - <td></td><td></td><td></td> - </tr> - - - </table></span> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/order_confirm_workflow_action.form b/product/Coramy/skins/coramy_trade/order_confirm_workflow_action.form deleted file mode 100755 index 2dd91250406fe0f5b7c6a7229eb37dcaba2ba34f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_confirm_workflow_action.form +++ /dev/null @@ -1,88 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Validate</title> - <row_length>4</row_length> - <name>base_workflow_action</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title></title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.REQUEST.workflow_action</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_create_packing_list.py b/product/Coramy/skins/coramy_trade/order_create_packing_list.py deleted file mode 100755 index 3ae9601f89a5f7a45099d6794f992e6ead64cfda..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_create_packing_list.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "order_create_packing_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -movement_list = [] -order = context - -if order.getPortalType() == 'Purchase Order' : - filter_dict = {'portal_type': 'Purchase Order Line'} -else : - filter_dict = {'portal_type': 'Sales Order Line'} - -movement_list += order.getOrderRelatedValueList(portal_type = 'Simulation Movement') -for order_line in order.contentValues(filter=filter_dict) : - movement_list += order_line.getOrderRelatedValueList(portal_type = 'Simulation Movement') - for cell in order_line.contentValues(filter={'portal_type': 'Delivery Cell'}) : - movement_list += cell.getOrderRelatedValueList(portal_type = 'Simulation Movement') - -root_group = context.portal_simulation.collectMovement(movement_list) -delivery_list = context.portal_simulation.buildDeliveryList(root_group) - -# what's the gestionaire of this order -user_name = '' -# are we on a sales order or puchase order ? -if order.getPortalType() == 'Sales Order' : - user_name = order.getSourceAdministrationTitle().replace(' ','_') -elif order.getPortalType() == 'Purchase Order' : - user_name = order.getDestinationAdministrationPersonTitle().replace(' ','_') - -for delivery in delivery_list : - # update the state of the created deliveries to 'confirmed' - delivery.confirm() - # update local_roles - delivery.assign_gestionaire_designe_roles(user_name = user_name) - -return delivery_list diff --git a/product/Coramy/skins/coramy_trade/order_history_view.pt b/product/Coramy/skins/coramy_trade/order_history_view.pt deleted file mode 100755 index c1109399fbd85dd63dffd2a75ca64f2d0028ca0f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_history_view.pt +++ /dev/null @@ -1,79 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "DTD/xhtml1-strict.dtd"> -<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?> - -<span tal:replace="nothing"> -<!-- -Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. - Thierry Faucher <tf@nexedi.com> - -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. ---> -</span> - -<html xmlns="http://www.w3.org/1999/xhtml" lang="en" - xml:lang="en" - xmlns:tal="http://xml.zope.org/namespaces/tal" - xmlns:metal="http://xml.zope.org/namespaces/metal" - metal:use-macro="here/main_template/macros/master"> - - <head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> - <title tal:content="template/title_or_id">The title</title> - <link href="erp5.css" rel="stylesheet" type="text/css"/> - </head> - - <body><div metal:fill-slot="main"> - <div class="Main"> - - -<strong>Historique</strong><br><br> - -<table border=1> - <tr align=center> - <td><b>Etat</b></td><td><b>Date - Heure</b></td><td><b>Utilisateur</b></td><td><b>Action</b></td><td><b>Commentaires</b></td> - </tr> - <span tal:repeat="history_item python:here.portal_workflow.getInfoFor(here, 'composant_history')"> - - <tr> - <td> - <span tal:condition="history_item/composant_state | nothing" - tal:content="history_item/composant_state"/> - </td> - <td> - <span tal:condition="history_item/composant_time | nothing" - tal:content="history_item/composant_time"/> - </td> - <td> - <span tal:condition="history_item/composant_actor | nothing" - tal:content="history_item/composant_actor"/> - </td> - <td> - <span tal:condition="history_item/composant_action | nothing" - tal:content="history_item/composant_action"/> - </td> - <td> - <span tal:condition="history_item/composant_comment | nothing" - tal:content="history_item/composant_comment"/> - </td> - </tr> - - </span> -</table> - - </div> - </div> - </body> -</html> diff --git a/product/Coramy/skins/coramy_trade/order_line_matrix_item_list.py b/product/Coramy/skins/coramy_trade/order_line_matrix_item_list.py deleted file mode 100755 index 1e90aa56b7d75392b960f83fb8dba3cb26ae689c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_line_matrix_item_list.py +++ /dev/null @@ -1,38 +0,0 @@ -## Script (Python) "order_line_matrix_item_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=base_category_list=[], base=1, include=1 -##title= -## -clist = [] -variation_category_list=[] - -if include == 1 : - for category in context.getVariationBaseCategoryList(): - if category in base_category_list : - variation_category_list.append(category) -else : - for category in context.getVariationBaseCategoryList(): - if not category in base_category_list : - variation_category_list.append(category) - -for base_category in variation_category_list : - if base_category in ('coloris','morphologie','variante'): - title_list = map(lambda x:('/'.join(x.getPhysicalPath()[len(x.portal_categories.getPhysicalPath()):])), - context.getValueList(base_category)) - value_list = context.getCategoryMembershipList(base_category, base=base) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - else : - title_list = context.getCategoryMembershipList(base_category, base=0) - value_list = context.getCategoryMembershipList(base_category, base=base) - for index in range(len(title_list)) : - clist += [(value_list[index],title_list[index])] - -if len(clist)==0 : - clist.append((None,None)) - -return clist diff --git a/product/Coramy/skins/coramy_trade/order_line_price_view.form b/product/Coramy/skins/coramy_trade/order_line_price_view.form deleted file mode 100755 index bc26161267e9e05cff29b5a89e6f040e99e82b5e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_line_price_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de commande</title> - <row_length>4</row_length> - <name>sales_order_line_price_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('target_quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_line_quantity_view.form b/product/Coramy/skins/coramy_trade/order_line_quantity_view.form deleted file mode 100755 index bde8bbac837ddaea5a2fbf54fcd0ac78243e8da0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_line_quantity_view.form +++ /dev/null @@ -1,321 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de commande</title> - <row_length>4</row_length> - <name>sales_order_line_price_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('target_quantity', 'target_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('Bleu', 'Bleu'), ('Rouge', 'Rouge'), ('Verts', 'Verts')]</lines> - <setter_method></setter_method> - <tabs type="list">[('32', '32'), ('34', '34'), ('36', '36'), ('38', '38')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_line_sort_on.form b/product/Coramy/skins/coramy_trade/order_line_sort_on.form deleted file mode 100755 index 60009bbad6a394ec540692166b34b43476c21f33..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_line_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>composant_list_sort_on</name> - <pt>dialog_view</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_line_view.form b/product/Coramy/skins/coramy_trade/order_line_view.form deleted file mode 100755 index d561afaaba042eb076e8d8a1b0c0ac13f72be237..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_line_view.form +++ /dev/null @@ -1,528 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de commande</title> - <row_length>4</row_length> - <name>order_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Category', 'Category'), ('Assortiment', 'Assortiment')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer2</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer3</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Montant total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_list_sort_on.form b/product/Coramy/skins/coramy_trade/order_list_sort_on.form deleted file mode 100755 index ce549478d8ccd6018420f460e47986793e630556..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_list_sort_on.form +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Trier</title> - <row_length>4</row_length> - <name>composant_list_sort_on</name> - <pt>form_sort</pt> - <action>base_sort_on</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>sort_order</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Ascending', 'ascending'), ('Descending', 'descending')]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>sort_order</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_list_ui.form b/product/Coramy/skins/coramy_trade/order_list_ui.form deleted file mode 100755 index 3e3b7fe775a09d4daf614d9fe52feb82c590cbea..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_list_ui.form +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Enregistrer les paramètres</title> - <row_length>4</row_length> - <name>composant_list_ui</name> - <pt>form_list_ui</pt> - <action>base_list_ui</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_search.form b/product/Coramy/skins/coramy_trade/order_search.form deleted file mode 100755 index 5c9bae0191bb03d5cdf327a87de3f26016168ba4..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_search.form +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>composant_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Composant</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Description</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>%</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Référence fournisseur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_sql_totalizer.zsql b/product/Coramy/skins/coramy_trade/order_sql_totalizer.zsql deleted file mode 100755 index c4c134bd587a8eda0cbaf744e23f3f30e75e956d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_sql_totalizer.zsql +++ /dev/null @@ -1,29 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name: -class_file: -</dtml-comment> -<params>order_id -order_type</params> -SELECT commande.id, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_cde, catalog AS commande, catalog AS delivery_cell, movement - -WHERE commande.id=<dtml-var "order_id"> -AND commande.portal_type="<dtml-var "order_type">" - -AND ligne_cde.parent_uid=commande.uid -AND (ligne_cde.portal_type="Sales Order Line" -OR ligne_cde.portal_type="Purchase Order Line" -OR ligne_cde.portal_type="Production Order Line") - -AND delivery_cell.parent_uid=ligne_cde.uid -AND delivery_cell.portal_type="Delivery Cell" - -AND movement.uid=delivery_cell.uid - -GROUP BY commande.id -ORDER BY commande.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/order_workflow_valider_composant.form b/product/Coramy/skins/coramy_trade/order_workflow_valider_composant.form deleted file mode 100755 index 52a2b4759bea05412c3ac9936db981d9e3b75c25..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/order_workflow_valider_composant.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider le composant</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_composant</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/ordered_lines.py b/product/Coramy/skins/coramy_trade/ordered_lines.py deleted file mode 100755 index e173e7bbf66af0a45d50bf6901e7eca508584559..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/ordered_lines.py +++ /dev/null @@ -1,22 +0,0 @@ -## Script (Python) "ordered_lines" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=lignes_cde -##title= -## -index1 = {} -keys2 = [] -nb_lignes = len(lignes_cde) - -for i in range(nb_lignes): - index1[int(lignes_cde[i].getId())]=i - -keys1 = index1.keys() -keys1.sort() -for i in range(nb_lignes): - keys2.append(index1[keys1[i]]) - -return keys2 diff --git a/product/Coramy/skins/coramy_trade/packing_list_line_price_view.form b/product/Coramy/skins/coramy_trade/packing_list_line_price_view.form deleted file mode 100755 index 1a06172b9acafaaaf0dcc351477e37a046ecc645..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/packing_list_line_price_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>packing_list_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('ttarget_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/packing_list_line_quantity_view.form b/product/Coramy/skins/coramy_trade/packing_list_line_quantity_view.form deleted file mode 100755 index 37567ba3d2b37c46462ff28f72c62087e1e720a7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/packing_list_line_quantity_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>packing_list_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('ttarget_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/packing_list_line_target_quantity_view.form b/product/Coramy/skins/coramy_trade/packing_list_line_target_quantity_view.form deleted file mode 100755 index 27e460c1763deaf24ce42eebec0679589bde0690..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/packing_list_line_target_quantity_view.form +++ /dev/null @@ -1,347 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>packing_list_line_quantity_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>matrixbox</id> <type>MatrixBox</type> - <values> - <all_editable_attributes type="list">[('ttarget_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</all_editable_attributes> - <alternate_name></alternate_name> - <cell_base_id>movement</cell_base_id> - <cell_range type="list">[]</cell_range> - <columns type="list">[('None', 'None')]</columns> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <editable_attributes type="list">[('target_quantity', 'target_quantity'), ('quantity', 'quantity'), ('price', 'price'), ('predicate_value', 'predicate_value'), ('variation_category_list', 'variation_category_list')]</editable_attributes> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <getter_method></getter_method> - <global_attributes type="list">[('domain_base_category_list', 'domain_base_category_list'), ('mapped_value_property_list', 'mapped_value_property_list'), ('predicate_operator', 'predicate_operator')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="list">[('None', 'None')]</lines> - <setter_method></setter_method> - <tabs type="list">[('None', 'None')]</tabs> - <title>matrixbox</title> - <update_cell_range type="int">1</update_cell_range> - </values> - <tales> - <columns>python:here.order_line_matrix_item_list(base_category_list = ('taille',), base=1)</columns> - <lines>python:here.order_line_matrix_item_list(base_category_list = ('coloris','variante'), base=1)</lines> - <tabs>python:here.order_line_matrix_item_list(base_category_list = ('taille','coloris','variante'), base=1, include=0)</tabs> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>here/getVariationBaseCategoryList</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['target_quantity', 'quantity', 'price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>matrixbox_predicate_value</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_variation_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>matrixbox_predicate_value</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - <default>python:cell_index</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>matrixbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('price')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>matrixbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>matrixbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>matrixbox_target_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:cell.getProperty('target_quantity')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/packing_list_line_view.form b/product/Coramy/skins/coramy_trade/packing_list_line_view.form deleted file mode 100755 index 7988286db14b767567d2901bcb2164b16475e9fb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/packing_list_line_view.form +++ /dev/null @@ -1,356 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de livraison</title> - <row_length>4</row_length> - <name>sales_packing_list_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Produit</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_variation_base_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">3</size> - <title>Axes variation</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeBaseCategoryList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_variation_category_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">8</size> - <title>Variantes</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>here/getVariationRangeCategoryItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix par défaut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/prix_print.pt b/product/Coramy/skins/coramy_trade/prix_print.pt deleted file mode 100755 index a5efca89085ca60ba5bb6611e7b5987c3d3bf869..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/prix_print.pt +++ /dev/null @@ -1,110 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> -<link rel=stylesheet type="text/css" href="echantillon.css"> - - - </head> - - <body - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - lignes_index python:here.ordered_lines(lignes_cde=lignes_cde); - nb_echantillons python:len(lignes_cde); - col_nb python:2; - lin_nb python:8; - nb_pages python:here.echantillon_page_count(total_nb=nb_echantillons,on_page=col_nb*lin_nb) - "> -<p align="center"><span class="Coramy" >Coramy</span><span class="Entete">5 bis, rue Denis Cordonnier - 59820 GRAVELINES - Tel : 03 28 51 91 51 - - Fax : 03 28 23 34 96</span><br>Échantillonnage N° <span tal:content="here/getId"/> - <span tal:define="url_items python:modules['string'].split(acheteur.getGender(),'/')" - tal:content="python:(len(url_items)-1)*url_items[len(url_items)-1]"> - </span> <span tal:content="python:modules['string'].capwords(modules['string'].lower(acheteur.getTitle()))"/> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(client.getTitle()))"/> - - <span tal:content="python:modules['string'].capwords(modules['string'].lower(here.getDescription()))"/><br></p> - <table tal:repeat="page_no python:range(nb_pages)" Class="PageA4" width="660" height="955" border="0" cellpadding="0" cellspacing="0"> - - <span tal:repeat="i python:range(lin_nb)"> - <tr valign="top" class="Border"> - - - <span tal:repeat="j python:map((lambda x:x+(page_no*col_nb*lin_nb)+(i*col_nb)),range(col_nb))"> - <span tal:condition="python:j<nb_echantillons"> - <td valign="top" align="center" width="50%" class="Border" tal:define="ligne python:lignes_cde[lignes_index[j]]"> - - <span tal:condition="python:ligne.getDefaultValue('resource',portal_type=['Modele'])<>None"> - <span tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele']); - coloris_list python:modele.contentValues(filter={'portal_type':'Variante Modele'}) - "> - - <span tal:define="url_items1 python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')" - tal:content="structure python:'Modèle : '+'<b>'+url_items1[len(url_items1)-1]+'</b>'">modele</span> - - <span tal:condition="python:ligne.getColoris() <> None"> - <span tal:define="url_items2 python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="structure python:' coloris '+url_items2[len(url_items2)-1]">modele</span> - </span> - - - <br> - <span tal:content="python:modules['string'].capwords(modules['string'].lower(modele.getComposition()))"/> - <br> - <span tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <table border="1" cellspacing="0" cellpadding="0" width="100%"> - <tr> - <span tal:condition="python:len(tarif_list)>0"> - <td><i>Prix €/Quantités</i></td> - <td tal:condition="python:tarif_list[0].getCell(None, '00300', base_id='destination_base_price')<>None" - tal:content="python:'300p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '01000', base_id='destination_base_price')<>None" - tal:content="python:'1000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '05000', base_id='destination_base_price')<>None" - tal:content="python:'5000p'"> - </td> - <td tal:condition="python:tarif_list[0].getCell(None, '10000', base_id='destination_base_price')<>None" - tal:content="python:'10000p'"> - </td> - </span> - </tr> - <span tal:repeat="tarif_item tarif_list"> - <tr> - <td tal:content="python:modules['string'].lower(tarif_item.getDescription())"/> - <td tal:condition="python:tarif_item.getCell(None, '00300', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '00300', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '01000', base_id='destination_base_price')<>None" -tal:content="python:'%s' %tarif_item.getCell(None, '01000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '05000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '05000', base_id='destination_base_price').destination_base_price or nothing"> - </td> - <td tal:condition="python:tarif_item.getCell(None, '10000', base_id='destination_base_price')<>None" -tal:content="python:'%.2f' %tarif_item.getCell(None, '10000', base_id='destination_base_price').destination_base_price or nothing"> - - </td> - - </tr> - - </span> - </table> - </span> - - </span> - - </span> - </td> - </span> - </span> - </tr> - </span> - - - </table> - -</body> -</html> diff --git a/product/Coramy/skins/coramy_trade/purchase_order_apply_condition.py b/product/Coramy/skins/coramy_trade/purchase_order_apply_condition.py deleted file mode 100755 index f82e24c26abeadf972d8f0e8235c9a7e69e109f3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_order_apply_condition.py +++ /dev/null @@ -1,175 +0,0 @@ -## Script (Python) "purchase_order_apply_condition" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -# appelé sur une commande, ce script recherche une condition d'achat -# pouvant s'appliquer à la commande et, s'il en trouve une (et une seule) -# complète le profil de la commande, le paiement, les remises - -order = context -condition_list = [] - -# on commence par regarder si une condition d'achat est associée à la commande -condition_list = order.getSpecialiseValueList(portal_type=('Condition Achat',)) -if len(condition_list) == 0 : - - # RECHERCHE d'une condition d'achat compatible - # la recherche se fait d'abord sur le couple 'destination_section' et 'source' - - my_destination_section = order.getDestinationSectionValue() - if my_destination_section <> None : - my_destination_section_uid = my_destination_section.getUid() - else : - my_destination_section = '' - my_source = order.getSourceValue() - if my_source <> None : - my_source_uid = my_source.getUid() - else : - my_source_uid = '' - my_destination = order.getDestinationValue() - if my_destination <> None : - my_destination_uid = my_destination.getUid() - else : - my_destination_uid = '' - condition_list = order.condition_achat_sql_search(destination_section_uid=my_destination_section_uid, source_uid=my_source_uid, destination_uid="") - - # s'il y a plus d'une condition trouvee, on essaye de réduire le choix - # en intégrant un critère de recherche sur 'destination' - if len(condition_list) > 1 : - condition_list = order.condition_achat_sql_search(destination_section_uid=my_destination_section_uid, source_uid=my_source_uid, destination_uid=my_destination_uid) - -# resultat des courses sur le recherche -if len(condition_list ) == 0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Pas+de+condition+achat+applicable.') -elif len(condition_list ) > 1 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Trop+de+conditions+achat+applicables.') -else : # on a une condition applicable - condition=condition_list[0].getObject() - - # MISE A JOUR DU PROFIL DE LA COMMANDE - - categories = order.getCategoryList() - # DESTINATION - if order.getDestinationValue() == None and condition.getDestinationValue() <> None : - categories += ('destination/'+condition.getDestinationValue().getRelativeUrl(),) - # destination_decision - if order.getDestinationDecisionValue() == None and condition.getDestinationDecisionValue() <> None : - categories += ('destination_decision/'+condition.getDestinationDecisionValue().getRelativeUrl(),) - # destination_administration - if order.getDestinationAdministrationValue() == None and condition.getDestinationAdministrationValue() <> None : - for destination_administration_item in condition.getDestinationAdministrationValueList() : - categories += ('destination_administration/'+destination_administration_item.getRelativeUrl(),) - # destination_payment - if order.getDestinationPaymentValue() == None and condition.getDestinationPaymentValue() <> None : - categories += ('destination_payment/'+condition.getDestinationPaymentValue().getRelativeUrl(),) - - # SOURCE_section - if order.getSourceSectionValue() == None : - if condition.getSourceSectionValue() <> None : - categories += ('source_section/'+condition.getSourceSectionValue().getRelativeUrl(),) - # si source_section pas presente dans la condition achat, on utilise source de order - else : - categories += ('source_section/'+order.getSourceValue().getRelativeUrl(),) - # source_decision - if order.getSourceDecisionValue() == None : - if condition.getSourceDecisionValue() <> None : - categories += ('source_decision/'+condition.getSourceDecisionValue().getRelativeUrl(),) - # si source_decision pas presente dans la condition achat, on utilise source de order - else : - categories += ('source_decision/'+order.getSourceValue().getRelativeUrl(),) - # source_administration - if order.getSourceAdministrationValue() == None : - if condition.getSourceAdministrationValue() <> None : - categories += ('source_administration/'+condition.getSourceAdministrationValue().getRelativeUrl(),) - # si source_administration pas presente dans la condition achat, on utilise source de order - else : - categories += ('source_administration/'+order.getSourceValue().getRelativeUrl(),) - # source_payment - if order.getSourcePaymentValue() == None : - if condition.getSourcePaymentValue() <> None : - categories += ('source_payment/'+condition.getSourcePaymentValue().getRelativeUrl(),) - # si source_payment pas presente dans la condition achat, on utilise source de order - else : - categories += ('source_payment/'+order.getSourceValue().getRelativeUrl(),) - - # MISE A JOUR DU PAIEMENT DE LA COMMANDE - my_payment_term='' - if order.hasPaymentTerm() : - my_payment_term = order.getPaymentTerm() - elif condition.hasPaymentTerm() : - my_payment_term = condition.getPaymentTerm() - - my_payment_end_of_month='' - if order.hasPaymentEndOfMonth() : - my_payment_end_of_month = order.getPaymentEndOfMonth() - elif condition.hasPaymentTerm() : - my_payment_end_of_month = condition.getPaymentEndOfMonth() - - my_payment_additional_term='' - if order.hasPaymentAdditionalTerm() : - my_payment_additional_term = order.getPaymentAdditionalTerm() - elif condition.hasPaymentAdditionalTerm() : - my_payment_additional_term = condition.getPaymentAdditionalTerm() - - if order.getPaymentModeValue() == None and condition.getPaymentModeValue() <> None : - categories += (condition.getPaymentModeValue().getRelativeUrl(),) - if order.getTradeDateValue() == None and condition.getTradeDateValue() <> None : - categories += (condition.getTradeDateValue().getRelativeUrl(),) - - # copie des conditions de paiement additionnelles si pas presentes dans commande - if len(order.contentIds(filter={'portal_type':'Condition Paiement'})) == 0 : - to_copy=[] - to_copy=condition.contentIds(filter={'portal_type':'Condition Paiement'}) - if len(to_copy)>0 : - copy_data = condition.manage_copyObjects(ids=to_copy) - new_id_list = order.manage_pasteObjects(copy_data) - - # copie des remises si pas presentes dans commande - if len(order.contentIds(filter={'portal_type':'Remise'})) == 0 : - to_copy=[] - to_copy=condition.contentIds(filter={'portal_type':'Remise'}) - if len(to_copy)>0 : - copy_data = condition.manage_copyObjects(ids=to_copy) - new_id_list = order.manage_pasteObjects(copy_data) - - # copie des conditions logistique - if order.getIncotermValue() == None and condition.getIncotermValue() <> None : - categories += (condition.getIncotermValue().getRelativeUrl(),) - if order.getDeliveryModeValue() == None and condition.getDeliveryModeValue() <> None : - categories += (condition.getDeliveryModeValue().getRelativeUrl(),) - - # copie de la devise - if order.getPriceCurrencyValue() == None and condition.getPriceCurrencyValue() <> None : - categories += ('price_currency/'+condition.getPriceCurrencyValue().getRelativeUrl(),) - - # copie du code client - my_destination_decision_source_reference = '' - if order.hasDestinationDecisionSourceReference() : - my_destination_decision_source_reference = order.getDestinationDecisionSourceReference() - elif condition.hasDestinationDecisionSourceReference() : - my_destination_decision_source_reference = condition.getDestinationDecisionSourceReference() - - # mise à jour du lien specialise entre order et condition appliquee - final_categories = () - for category_item in categories : - if category_item.find('specialise/') == (-1): - final_categories += (category_item,) - - final_categories += ('specialise/'+condition.getRelativeUrl(),) - - order.edit(categories=final_categories, payment_term=my_payment_term, - payment_end_of_month=my_payment_end_of_month, - payment_additional_term=my_payment_additional_term, - destination_decision_source_reference = my_destination_decision_source_reference) - - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Commande+mise+a+jour.') - -return redirect_url diff --git a/product/Coramy/skins/coramy_trade/purchase_order_apply_condition_handler.py b/product/Coramy/skins/coramy_trade/purchase_order_apply_condition_handler.py deleted file mode 100755 index 2cc4b534a812310e8edb5ae6f906684394b86cfe..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_order_apply_condition_handler.py +++ /dev/null @@ -1,12 +0,0 @@ -## Script (Python) "purchase_order_apply_condition_handler" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -redirect_url = context.purchase_order_apply_condition(form_id=form_id) - -context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/purchase_order_list.form b/product/Coramy/skins/coramy_trade/purchase_order_list.form deleted file mode 100755 index 155a3434e48810b89ac361645b649ac0844c9de5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_order_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de commandes</title> - <row_length>4</row_length> - <name>sales_order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('default_destination_administration_person_title', 'Gestionaire'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Commande'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livrer \xe0'), ('default_destination_administration_person_title', 'Gestionaire'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Purchase Order', 'Purchase Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>purchase_order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Commandes achat</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/purchase_order_print.pt b/product/Coramy/skins/coramy_trade/purchase_order_print.pt deleted file mode 100755 index edd575476835e1f7072ef8d0359226dc6aef220f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_order_print.pt +++ /dev/null @@ -1,205 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="mesure"> - </HEAD> - - <BODY tal:define="commercial python:here.getSourceAdministrationValue(portal_type=['Person']); - gestionaire python:here.getDestinationAdministrationValue(portal_type=['Person']); - fournisseur python:here.getSourceValue(portal_type=['Organisation']); - livraison python:here.getDestinationValue(portal_type= - ['Organisation','Category']); - totalizer python:[0]; - order_lines_list python:here.contentValues(filter={'portal_type': - 'Purchase Order Line'})"> - - <TABLE width="660" height="900" cellpadding="0" cellspacing="0"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD> - <h2>Coramy</h2> - </TD> - <TD align="center"> - <h2>Commande <span tal:content="python:here.getOrderType()+' n° '+here.getId()"/></h2> - </TD> - <TD align="right"> - <span tal:content="python:'Emise le : '+str(here.getDateEmission())"/> - </TD> - </TR> - </TABLE> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR height="10%"><!-- Infos --> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="bold">Livrer à</TD> - <TD nowrap> - <SPAN tal:condition="python:livraison<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(livraison.getTitle())"/></b> - <br><SPAN tal:condition="python:livraison.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(livraison.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD width="100%"> </TD> - <TD class="bold">Fournisseur</TD> - <TD nowrap> - <SPAN tal:condition="python:fournisseur<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(fournisseur.getTitle())"/></b> - <br><SPAN tal:define="address_items python:modules['string'].split(fournisseur.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </TD> - </TR> - <TR> - <TD class="bold">Gestionaire</TD> - <TD> - <SPAN tal:condition="python:gestionaire<>None"> - <SPAN tal:content="python: modules['string'].capwords(gestionaire.getTitle())"> - </SPAN> - </SPAN> - </TD> - <TD ></TD> - <TD nowrap class="bold">A l'attention de </TD> - <TD> - <SPAN tal:condition="python:commercial<>None"> - <SPAN tal:content="python: modules['string'].capwords(commercial.getTitle())"> - </SPAN> - </SPAN> - </TD> - </TR> - <TR> - <TD class="bold">Téléphone</TD> - <TD> - <SPAN tal:condition="python:gestionaire<>None"> - <SPAN tal:content="python:gestionaire.getDefaultTelephoneText()"> - </SPAN> - </SPAN> - </TD> - <TD ></TD> - <TD nowrap class="bold">Téléphone</TD> - <TD> - <SPAN tal:condition="python:commercial<>None"> - <SPAN tal:content="python:commercial.getDefaultTelephoneText()"> - </SPAN> - </SPAN> - </TD> - </TR> - <TR> - <TD class="bold">Fax</TD> - <TD> - <SPAN tal:condition="python:gestionaire<>None"> - <SPAN tal:content="python:gestionaire.getDefaultFaxText()"> - </SPAN> - </SPAN> - </TD> - <TD ></TD> - <TD nowrap class="bold">Fax</TD> - <TD> - <SPAN tal:condition="python:commercial<>None"> - <SPAN tal:content="python:commercial.getDefaultFaxText()"> - </SPAN> - </SPAN> - </TD> - </TR> - </TABLE> - </TD> - </TR> - - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR><!-- Tableau de lignes de commande --> - <TD valign="top"> - <TABLE border="2" width="100%"> - <TR> - <TD class="bold" align="center">Référence Fournisseur</TD> - <TD class="bold" align="center">Code interne</TD> - <TD class="bold" align="center" width="100%">Désignation</TD> - <TD class="bold" align="center">Variantes</TD> - <TD class="bold" align="center">Quantité</TD> - <TD class="bold" align="center">Unité</TD> - <TD class="bold" align="center">Prix unitaire</TD> - <TD class="bold" align="center">Prix total</TD> - <TD class="bold" align="center">Date livraison</TD> - </TR> - <SPAN tal:repeat="order_line order_lines_list"> - <SPAN tal:define="delivery_cell_list python:order_line.getDeliveryCellPrintList()"> - <TR tal:repeat="delivery_cell delivery_cell_list"> - <TD nowrap tal:content="python:delivery_cell[0]" align="left"></TD> - <TD tal:content="python:delivery_cell[1]" align="left"></TD> - <TD tal:content="python:delivery_cell[2]" align="left"></TD> - <TD nowrap tal:define="variantes_list python:delivery_cell[3]" align="left"> - <SPAN tal:repeat="variante variantes_list"> - <SPAN tal:condition="python:variante<>'value' and variante<>None"> - <SPAN tal:define="variante_items python:variante.split('/')"> - <SPAN tal:content="python:variante_items[len(variante_items)-1]"/><BR> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD tal:content="python: '%.0f' % delivery_cell[4]" align="right"></TD> - <TD tal:content="python:delivery_cell[5]" align="left"></TD> - <TD tal:content="python: '%.3f' % delivery_cell[6]" align="right"></TD> - <TD tal:content="python: '%.2f' % delivery_cell[7]" align="right"></TD> - <TD tal:content="python:delivery_cell[8]" align="center"></TD> - <SPAN tal:define="toto python:order_line.PT_update_total_list(totalizer,[0],delivery_cell[7])"/> - </TR> - </SPAN> - </SPAN> - <TR> - <TD colspan="7" align="right">Total - </TD> - <TD tal:content="python: '%.2f' %totalizer[0]"/> - <TD> - <SPAN tal:define="currency_items python:here.getPriceCurrency().split('/')"> - <SPAN tal:content="python:currency_items[len(currency_items)-1]"/> - </SPAN> - </TD> - </TR> - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split(here.getComment(''),'\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <br> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - <TR><!-- Espacement inter-tableaux --> - <TD height="15"/> - </TR> - - <TR> - <TD height="90%"/> - </TR> - <TR> - <TD align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_trade/purchase_order_view.form b/product/Coramy/skins/coramy_trade/purchase_order_view.form deleted file mode 100755 index 91d7cb89b4dc9d9c7b4f5afa0348e9d171073398..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_order_view.form +++ /dev/null @@ -1,822 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Commande achat</title> - <row_length>4</row_length> - <name>purchase_order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_order_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type de commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/order_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_date_emission</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Commande émise le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_commande_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Support de la commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/commande_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person'), ('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Contact</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_trade_condition_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>condition_achat</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Condition Achat', 'Condition Achat')]</portal_type> - <required type="int">0</required> - <title>Condition d'achat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Montant total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Date livraison')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Purchase Order Line', 'Purchase Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>purchase_order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix d'achat</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/purchase_packing_list_aggregated_view.form b/product/Coramy/skins/coramy_trade/purchase_packing_list_aggregated_view.form deleted file mode 100755 index 3761a721803a7999bf712a298533da5da0fd92b2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_packing_list_aggregated_view.form +++ /dev/null @@ -1,613 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison achat</title> - <row_length>4</row_length> - <name>purchase_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Date d'expédition prévue : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Date de livraison prévue : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Purchase Packing List Line', 'Purchase Packing List Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>sales_packing_list_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/purchase_packing_list_list.form b/product/Coramy/skins/coramy_trade/purchase_packing_list_list.form deleted file mode 100755 index 46fa2f6c4b3862c93b045f3afc6f9f13f58db2ee..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_packing_list_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de livraisons</title> - <row_length>4</row_length> - <name>purchase_packing_list_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Livraison'), ('default_causality_id', 'Commande'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livr\xe9 \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Livraison'), ('default_causality_id', 'Commande'), ('default_destination_section_title', 'Soci\xe9t\xe9'), ('default_source_title', 'Exp\xe9di\xe9 par'), ('default_destination_title', 'Livr\xe9 \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Purchase Packing List', 'Purchase Packing List')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>purchase_packing_list_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Livraisons d'achat</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/purchase_packing_list_view.form b/product/Coramy/skins/coramy_trade/purchase_packing_list_view.form deleted file mode 100755 index 86a8d29befdb8d1b99c8babb4a9871025dd9a569..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/purchase_packing_list_view.form +++ /dev/null @@ -1,738 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison achat</title> - <row_length>4</row_length> - <name>purchase_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_destination_administration_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Purchase Order").getDestinationAdministrationPersonTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>invoice_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Facturation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'invoice_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>causality_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Cohérence</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'causality_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category')]</portal_type> - <required type="int">0</required> - <title>Livré à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Expédition prévue le : %s' % here.getStartDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Livraison prévue le : %s' % here.getStopDate()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('quantity', 'Objectif quantit\xe9'), ('target_quantity', 'Quantit\xe9'), ('item_id_list', 'Lots associ\xe9s'), ('price', 'Prix'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('getPurchaseDeliveryCellSourceReference', 'R\xe9f. fournisseur'), ('quantity', 'Objectif quantit\xe9'), ('target_quantity', 'Quantit\xe9'), ('item_id_list', 'Lots associ\xe9s'), ('price', 'Prix'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('target_quantity', 'target_quantity'), ('item_id_list', 'item_id_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">8</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Inventory</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/remise_view.form b/product/Coramy/skins/coramy_trade/remise_view.form deleted file mode 100755 index c02efd8a0c305ae5f5b844e75f021123ca4c006d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/remise_view.form +++ /dev/null @@ -1,232 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Remise</title> - <row_length>4</row_length> - <name>remise_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Remise</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_int_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Numéro d'ordre</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_discount_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Type de remise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/discount_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_immediate_discount</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Remise déduite sur facture</title> - </values> - <tales> - <default>here/getImmediateDiscount</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_discount_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Taux de remise</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_discount</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Montant</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sale_invoice_transaction_view.form b/product/Coramy/skins/coramy_trade/sale_invoice_transaction_view.form deleted file mode 100755 index 79be0d18a443fe3eadc40c4c6fb84fc5c40f4e06..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sale_invoice_transaction_view.form +++ /dev/null @@ -1,630 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> - -<form> - <title>Facture vente</title> - <name>sales_order_view</name> - <action>base_edit</action> - <enctype>multipart/form-data</enctype> - <method>POST</method> - <pt>form_view</pt> - - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Identifiant</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Numéro de facture</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>simulation_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>livraison_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Packing List', 'Sales Packing List')]</portal_type> - <required type="int">0</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Livrer à</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <update_method>base_update_relation</update_method> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_value_added_tax_recoverable</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Soumis à la T.V.A.</title> - </values> - <tales> - <default>here/getValueAddedTaxRecoverable</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_value_added_tax_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Taux de TVA</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>total_ht</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Total H.T.</title> - </values> - <tales> - <title>python:'Total H.T. : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>montant_taxable</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Montant taxable</title> - </values> - <tales> - <title>python:'Montant taxable : %.2f' % here.Invoice_zGetTotalNetPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>vat</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>TVA</title> - </values> - <tales> - <title>python:'TVA : %.2f' % here.Invoice_zGetTotalVat()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Net à payer</title> - </values> - <tales> - <title>python:'Net à payer : %.2f' % (here.Invoice_zGetTotalVat() + here.Invoice_zGetTotalNetPrice())</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>due_date</id> <type>DateTimeField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'échéance</title> - </values> - <tales> - <title>python:'Date d échéance : ' + here.Invoice_zGetDueDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('getResourceRelativeUrl', 'Produit'), ('description', 'Description'), ('total_quantity', 'Quantit\xe9 totale'), ('total_price', 'Montant total')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable_columns type="list">[('description', 'Description')]</editable_columns> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Invoice Line', 'Invoice Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>invoice_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <stat_method></stat_method> - <title>Lignes de facture</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_description</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>listbox_description</title> - <truncate type="int">0</truncate> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> diff --git a/product/Coramy/skins/coramy_trade/sales_invoice_list.form b/product/Coramy/skins/coramy_trade/sales_invoice_list.form deleted file mode 100755 index 477ac06a73c7898a20b502bca2db1029ffe38fdb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_invoice_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des factures</title> - <row_length>4</row_length> - <name>sales_invoice_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Identifiant'), ('reference', 'N\xb0 facture'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('description', 'Description'), ('default_destination_administration_organisation_title', 'Facturer \xe0'), ('default_causality_id', 'Livraison'), ('default_destination_title', 'Livrer \xe0'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('reference', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sale Invoice Transaction', 'Sale Invoice Transaction')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>order_selection</selection_name> - <sort type="list">[('reference', 'reference')]</sort> - <sort_columns type="list">[]</sort_columns> - <stat_method></stat_method> - <title>Factures</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_invoice_list_view.form b/product/Coramy/skins/coramy_trade/sales_invoice_list_view.form deleted file mode 100755 index 577016e92e9f74ec9c44e79ddee7b3347472d86e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_invoice_list_view.form +++ /dev/null @@ -1,524 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Commande échantillons</title> - <row_length>4</row_length> - <name>order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Id</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Numéro de facture</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_buyer_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>contact</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Acheteur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Rayon</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_value_added_tax_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Taux de TVA</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_value_added_tax_recoverable</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Non', '0'), ('Oui', '1')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Soumis à la TVA</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:str(here.getValueAddedTaxRecoverable())</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_date_rdv</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date rendez-vous</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer avant le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Invoice Line', 'Invoice Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_invoice_print.pt b/product/Coramy/skins/coramy_trade/sales_invoice_print.pt deleted file mode 100755 index 53dafc7fa9d719bda0600983c4ef144a47550158..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_invoice_print.pt +++ /dev/null @@ -1,112 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Commande échantillons : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Client</b></i></td> - <td tal:content="client/getTitle">77H</td> - <td><i><b>Livrer à partir du</b></i></td> - <td tal:content="here/getStartDate"></td> - <td></td> - </tr> - <tr> - <td><i><b>Acheteur</b></i></td> - <td tal:content="acheteur/getTitle">77H</td> - <td><i><b>Livrer avant le</b></i></td> - <td tal:content="here/getStopDate"></td> - <td></td> - </tr> - <tr> - <td valign="top"><i><b>Commentaires</b></i> </td> - <td colspan="3" tal:content="here/getCommentaires">comments</td> - <td></td> - </tr> - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>N°</b></i></td> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Coloris</b></i></td> - <td align=center><i><b>Taille</b></i></td> - <td align=center><i><b>Quantité</b></i></td> - <td align=center><i><b>Etat</b></i></td> - </tr> - <span tal:repeat="ligne lignes_cde"> - <tr> - <td align=right tal:content="ligne/getId">0</td> - <span tal:define="url_items python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')"> - <td align=center tal:content="python:url_items[len(url_items)-1]">resource</td> - </span> - - - <td align=center tal:content="python: '%.0f' % ligne.getQuantity()">2</td> - <td align=left tal:content="ligne/sample_order_line_modele_state">etat</td> - </tr> - </span> - <tr> - <td colspan="3"></td> - <td align=center><b><i>Total</i></b></td> - <td align=center tal:content="python: '%.0f' %here.sample_order_count_samples()"><b><i>Total</i></b></td> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/sales_invoice_view.form b/product/Coramy/skins/coramy_trade/sales_invoice_view.form deleted file mode 100755 index 400f59dd2b2128fa9832e966679cc2cb447026f3..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_invoice_view.form +++ /dev/null @@ -1,577 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Commande échantillons</title> - <row_length>4</row_length> - <name>order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_buyer_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>contact</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Acheteur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Rayon</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_document_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_value_added_tax_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Taux de TVA</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_value_added_tax_recoverable</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('Non', '0'), ('Oui', '1')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Soumis à la TVA</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:str(here.getValueAddedTaxRecoverable())</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_date_rdv</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date rendez-vous</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer avant le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('source', 'Account'), ('source_debit', 'Debit'), ('source_credit', 'Credit')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('source', 'Account'), ('source_debit', 'Debit'), ('source_credit', 'Credit')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('source_debit', 'Debit'), ('source_credit', 'Credit'), ('source', 'Account')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[('resource', 'resource')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sale Invoice Transaction Line', 'Sale Invoice Transaction Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_source</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[('a', 'a'), ('b', 'b'), ('c', 'c')]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>listbox_source</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_source_debit</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">8</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_source_debit</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_source_credit</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">8</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_source_credit</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_title</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Title</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_order_apply_condition.py b/product/Coramy/skins/coramy_trade/sales_order_apply_condition.py deleted file mode 100755 index 033ed0f51a93f50d61ad860828d401323a847389..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_order_apply_condition.py +++ /dev/null @@ -1,191 +0,0 @@ -## Script (Python) "sales_order_apply_condition" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,batch_mode=0 -##title= -## -# appelé sur une commande, ce script recherche une condition de vente -# pouvant s'appliquer à la commande et, s'il en trouve une (et une seule) -# complète le profil de la commande, le paiment, les remises - -order = context -condition_list = [] - -# on commence par regarder si une condition de vente est associée à la commande -condition_list = order.getSpecialiseValueList(portal_type=('Condition Vente',)) -if len(condition_list) == 0 : - - # RECHERCHE d'une condition de vente compatible - # la recherche se fait d'abord sur le couple 'source_section' et 'destination' - - my_source_section = order.getSourceSectionValue() - if my_source_section <> None : - my_source_section_uid = my_source_section.getUid() - else : - my_source_section_uid = '' - my_destination = order.getDestinationValue() - if my_destination <> None : - my_destination_uid = my_destination.getUid() - else : - my_destination_uid = '' - my_group = order.getGroupValue() - if my_group <> None : - my_group_uid = my_group.getUid() - else : - my_group_uid = '' - my_destination_decision = order.getDestinationDecisionValueList(portal_type=('Organisation','Category')) - if len(my_destination_decision) > 0 : - my_destination_decision_uid = my_destination_decision[0].getUid() - else : - my_destination_decision_uid = '' - condition_list = order.condition_vente_sql_search(source_section_uid=my_source_section_uid, destination_uid=my_destination_uid, group_uid="", destination_decision_uid="") - - # si on a trouve une ou plusieurs conditions de vente on s'arrete - # sinon on refait une recherche sur le couple 'source-section' et 'group' - if len(condition_list ) == 0 : - condition_list = order.condition_vente_sql_search(source_section_uid=my_source_section_uid, destination_uid="", group_uid=my_group_uid, destination_decision_uid="") - if len(condition_list) > 1 : - # s'il y a plus d'une condition trouvee, on essaye de réduire le choix - # en intégrant un critère de recherche sur 'destination_decision' - condition_list = order.condition_vente_sql_search(source_section_uid=my_source_section_uid, destination_uid="", group_uid=my_group_uid, destination_decision_uid=my_destination_decision_uid) - - # s'il y a plus d'une condition trouvee, on essaye de réduire le choix - # en intégrant un critère de recherche sur 'destination_decision' - elif len(condition_list) > 1 : - condition_list = order.condition_vente_sql_search(source_section_uid=my_source_section_uid, destination_uid=my_destination_uid, group_uid="", destination_decision_uid=my_destination_decision_uid) - -# resultat des courses sur le recherche -if len(condition_list ) == 0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Pas+de+condition+de+vente+applicable.') -elif len(condition_list ) > 1 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Trop+de+conditions+de+vente+applicables.') -else : # on a une condition applicable - condition=condition_list[0].getObject() - - # MISE A JOUR DU PROFIL DE LA COMMANDE - - categories = order.getCategoryList() - # SOURCE - if order.getSourceValue() == None and condition.getSourceValue() <> None : - categories += ('source/'+condition.getSourceValue().getRelativeUrl(),) - # source_decision - if order.getSourceDecisionValue() == None and condition.getSourceDecisionValue() <> None : - categories += ('source_decision/'+condition.getSourceDecisionValue().getRelativeUrl(),) - # source_administration - if order.getSourceAdministrationValue() == None and condition.getSourceAdministrationValue() <> None : - categories += ('source_administration/'+condition.getSourceAdministrationValue().getRelativeUrl(),) - # source_payment - if order.getSourcePaymentValue() == None and condition.getSourcePaymentValue() <> None : - categories += ('source_payment/'+condition.getSourcePaymentValue().getRelativeUrl(),) - - # DESTINATION_section - if order.getDestinationSectionValue() == None : - if condition.getDestinationSectionValue() <> None : - categories += ('destination_section/'+condition.getDestinationSectionValue().getRelativeUrl(),) - # si destination_section pas presente dans la condition de vente, on utilise destination de order - else : - categories += ('destination_section/'+order.getDestinationValue().getRelativeUrl(),) - # destination_decision - if order.getDestinationDecisionValue(portal_type='Organisation') == None : - if condition.getDestinationDecisionValue(portal_type='Organisation') <> None : - categories += ('destination_decision/'+condition.getDestinationDecisionValue(portal_type='Organisation').getRelativeUrl(),) - # si destination_decision pas presente dans la condition de vente, on utilise destination de order - else : - categories += ('destination_decision/'+order.getDestinationValue().getRelativeUrl(),) - # destination_administration - if order.getDestinationAdministrationValue() == None : - if condition.getDestinationAdministrationValue() <> None : - categories += ('destination_administration/'+condition.getDestinationAdministrationValue().getRelativeUrl(),) - # si destination_administration pas presente dans la condition de vente, on utilise destination de order - else : - categories += ('destination_administration/'+order.getDestinationValue().getRelativeUrl(),) - # destination_payment - if order.getDestinationPaymentValue() == None : - if condition.getDestinationPaymentValue() <> None : - categories += ('destination_payment/'+condition.getDestinationPaymentValue().getRelativeUrl(),) - # si destination_payment pas presente dans la condition de vente, on utilise destination de order - else : - categories += ('destination_payment/'+order.getDestinationValue().getRelativeUrl(),) - - # MISE A JOUR DU PAIEMENT DE LA COMMANDE - my_payment_term='' - if order.hasPaymentTerm() : - my_payment_term = order.getPaymentTerm() - elif condition.hasPaymentTerm() : - my_payment_term = condition.getPaymentTerm() - - my_payment_end_of_month='' - if order.hasPaymentEndOfMonth() : - my_payment_end_of_month = order.getPaymentEndOfMonth() - elif condition.hasPaymentTerm() : - my_payment_end_of_month = condition.getPaymentEndOfMonth() - - my_payment_additional_term='' - if order.hasPaymentAdditionalTerm() : - my_payment_additional_term = order.getPaymentAdditionalTerm() - elif condition.hasPaymentAdditionalTerm() : - my_payment_additional_term = condition.getPaymentAdditionalTerm() - - if order.getPaymentModeValue() == None and condition.getPaymentModeValue() <> None : - categories += (condition.getPaymentModeValue().getRelativeUrl(),) - if order.getTradeDateValue() == None and condition.getTradeDateValue() <> None : - categories += (condition.getTradeDateValue().getRelativeUrl(),) - - # copie des conditions de paiement additionnelles si pas presentes dans commande - if len(order.contentIds(filter={'portal_type':'Condition Paiement'})) == 0 : - to_copy=[] - to_copy=condition.contentIds(filter={'portal_type':'Condition Paiement'}) - if len(to_copy)>0 : - copy_data = condition.manage_copyObjects(ids=to_copy) - new_id_list = order.manage_pasteObjects(copy_data) - - # copie des remises si pas presentes dans commande - if len(order.contentIds(filter={'portal_type':'Remise'})) == 0 : - to_copy=[] - to_copy=condition.contentIds(filter={'portal_type':'Remise'}) - if len(to_copy)>0 : - copy_data = condition.manage_copyObjects(ids=to_copy) - new_id_list = order.manage_pasteObjects(copy_data) - - # copie des conditions logistique - if order.getIncotermValue() == None and condition.getIncotermValue() <> None : - categories += (condition.getIncotermValue().getRelativeUrl(),) - if order.getDeliveryModeValue() == None and condition.getDeliveryModeValue() <> None : - categories += (condition.getDeliveryModeValue().getRelativeUrl(),) - - # copie de la devise - if order.getPriceCurrencyValue() == None and condition.getPriceCurrencyValue() <> None : - categories += ('price_currency/'+condition.getPriceCurrencyValue().getRelativeUrl(),) - - # copie du code fournisseur - my_source_decision_destination_reference = '' - if order.hasSourceDecisionDestinationReference() : - my_source_decision_destination_reference = order.getSourceDecisionDestinationReference() - elif condition.hasSourceDecisionDestinationReference() : - my_source_decision_destination_reference = condition.getSourceDecisionDestinationReference() - - # mise à jour du lien specialise entre order et condition appliquee - final_categories = () - for category_item in categories : - if category_item.find('specialise/') == (-1): - final_categories += (category_item,) - - final_categories += ('specialise/'+condition.getRelativeUrl(),) - - order.edit(categories=final_categories, payment_term=my_payment_term, - payment_end_of_month=my_payment_end_of_month, - payment_additional_term=my_payment_additional_term, - source_decision_destination_reference = my_source_decision_destination_reference) - - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=Commande+mise+a+jour.') - -if batch_mode: - return None -else: - context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/sales_order_list.form b/product/Coramy/skins/coramy_trade/sales_order_list.form deleted file mode 100755 index bed70c3e37f5b2bb60e1eaad7a885694348be828..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_order_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de commandes</title> - <row_length>4</row_length> - <name>sales_order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('group', 'Groupe client'), ('default_destination_decision_organisation_title', 'Command\xe9 par'), ('default_destination_decision_person_title', 'Acheteur'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Commande'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('group', 'Groupe client'), ('default_destination_decision_organisation_title', 'Command\xe9 par'), ('default_destination_decision_person_title', 'Acheteur'), ('default_destination_title', 'Livrer \xe0'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sales Order', 'Sales Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>sales_order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Commandes</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_order_view.form b/product/Coramy/skins/coramy_trade/sales_order_view.form deleted file mode 100755 index 30387f5f4d4490c3bc1d821a1f5ad0f162a716a9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_order_view.form +++ /dev/null @@ -1,967 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Commande vente</title> - <row_length>4</row_length> - <name>sales_order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_order_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type de commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/order_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_date_reception</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Commande reçue le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_commande_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Support de la commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/commande_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_decision_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Commercial</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_commission_ratio</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Taux de commission</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_segmentation_strategique</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Segmentation</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/segmentation_strategique/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price_currency</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Devise</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')]+map(lambda x:(x.id,'devise/%s' %x.id),here.devise.objectValues())</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° commande client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_decision_person_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Acheteur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_decision_organisation_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_decision</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organistion</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Commandé par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_group</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Groupe</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/group/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison demandée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>spacer</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison confirmée</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">0</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_trade_condition_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>specialise</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>condition_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Condition Vente', 'Condition Vente')]</portal_type> - <required type="int">0</required> - <title>Condition de vente</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité totale</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité totale : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_total_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Montant total</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Montant total : %.2f' % here.getTotalPrice()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Mod\xe8le'), ('total_quantity', 'Quantit\xe9 totale'), ('quantity_unit', 'Unit\xe9'), ('total_price', 'Montant total'), ('target_stop_date', 'Livraison demand\xe9e'), ('stop_date', 'Livraison confirm\xe9e')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sales Order Line', 'Sales Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>sales_order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_aggregated_view.form b/product/Coramy/skins/coramy_trade/sales_packing_list_aggregated_view.form deleted file mode 100755 index a432d1c6eb25103c8b694cb004fd015660496570..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_aggregated_view.form +++ /dev/null @@ -1,739 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison vente</title> - <row_length>4</row_length> - <name>sales_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getSourceAdministrationTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° commande client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue().getDestinationReference()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>destination_address</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Lieu livraison : inconnu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python: here.getDestinationValue(portal_type=['Organisation']).Organisation_getOneLineAddress()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_section</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Expédition prévue le : ' + here.getStartDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Livraison prévue le : ' + here.getStopDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_columns> - <all_editable_columns type="list">[('quantity_unit', 'Unit')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne n\xb0'), ('resource_title', 'Produit'), ('total_quantity', 'Objectif quantit\xe9'), ('target_total_quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity_unit', 'Unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sales Packing List Line', 'Sales Packing List Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>sales_packing_list_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Ligne de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix de vente</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_container_list_print.pt b/product/Coramy/skins/coramy_trade/sales_packing_list_container_list_print.pt deleted file mode 100755 index ad937693ea69a44b34d656c8f3a423687a7a5416..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_container_list_print.pt +++ /dev/null @@ -1,210 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </HEAD> - <BODY bgcolor="#ffffff" tal:define="delivery_list python:here.object_action_list(selection_name='sales_packing_list_selection',max_nb=10); - page_number python:[0]"> - <TABLE tal:repeat="delivery delivery_list" width="660" height="955" cellpadding="0" cellspacing="0" tal:attributes="class python:here.PT_pageBreak(page_number)"> - <TABLE border="0" width="660" height="900" cellpadding="0" cellspacing="0" - tal:define="order python:delivery.getCausalityValue(portal_type=['Sales Order']); - destination python:delivery.getDestinationValue(portal_type=['Organisation']); - distinct_container_list python:delivery.PackingList_getDistinctContainerList(); - totalizer python:[0,0,0,0]"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="Titre" tal:content="python:delivery.getSourceSectionTitle()">Coramy</TD> - <TD align="center"> - <span class="Titre2">Liste de colisage<span tal:content="python:' n° '+delivery.getId()"/></span><br> - Lieferschein Nr / Delivery note N° - </TD> - <TD align="right"> - <span tal:content="python:'Gravelines, le '+str(here.DateTime_getFormattedDate())"/> - </TD> - </TR> - </TABLE> - </TD> - </TR> - <TR height="18%"><!-- Infos --> - <TD><br> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD nowrap align="center" class="Bordereau">Commande N°<br>Auftrag Nr / Order N°<br><span class="Normal" tal:content="python:order.getDestinationReference()" /></TD> - <TD nowrap align="center" class="Bordereau" >Poids brut (Kg)<br>Brutto-gewicht / Gross weight <br><span class="Normal" tal:content="python:delivery.PackingList_getTotalGrossWeight()" /></TD> - <TD nowrap rowspan="3"> - <SPAN tal:condition="python:destination<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(destination.getTitle())"/></b> - <br><SPAN tal:condition="python:destination.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(destination.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD nowrap align="center" rowspan="2" class="Bordereau">Port<br>Porto / Freight<br><span class="Normal" tal:content="python:delivery.getIncoterm()" /></TD> - </TR> - <TR> - <TD nowrap align="center" class="Bordereau">Confirmation N°<br>Bestätigung Nr <br><span class="Normal" tal:content="python:order.getId()" /></TD> - <TD nowrap align="center" class="Bordereau">Nombre de colis<br>Kolli Anzahl / Nb of parcels <br><span class="Normal" tal:content="python:len(delivery.contentValues(filter={'portal_type':'Container'}))" /></TD> - </TR> - <TR> - <TD nowrap align="center" class="Bordereau"> Date d'expédition<br>Versand Tag / Sending Date <br><span class="Normal" tal:content="python:str(here.DateTime_getFormattedDate(delivery.getTargetStartDate()))" /></TD> - <TD nowrap align="center" class="Bordereau" >Nombre d'articles<br>Artikel Anzahl / Nb of items<br><span class="Normal" tal:content="python:delivery.getTargetTotalQuantity()" /></TD> - <TD nowrap align="center" class="Bordereau" >Transporteur <br> Carrier / Spediteur<br><span class="Normal" tal:content="python:delivery.getDeliveryMode()" /></TD> - </TR> - </TABLE> - </TD> - </TR> - - - <SPAN tal:repeat="container_template distinct_container_list"> - <SPAN tal:define="toto python:here.PT_reset_total_list(totalizer,[1])"/> - <SPAN tal:repeat="delivery_line python:container_template[0].contentValues(filter={'portal_type': - 'Container Line'})"> - <TR><!-- Matrice de ligne de livraison --> - <TD> - - <TABLE border="1" width="100%" - tal:define="correspondance_tailles python:delivery_line.getResourceValue().getSpecialiseValue(portal_type=['Correspondance Tailles']); - coloris_list python:delivery_line.Variated_getColorisList(); - taille_qty python:len(delivery_line.Variated_getTailleList(correspondance_tailles)[0]); - morphologie_list python:delivery_line.getMorphologieList() - "> - <TR> - <TD align="left" - tal:condition="python:container_template[1][0]==container_template[1][1]"> - <b tal:content="python:'Colis %s'%container_template[1][0]"/> - </TD> - <TD align="left" - tal:condition="python:container_template[1][0]<>container_template[1][1]"> - <b tal:content="python:'Colis %s a %s'%(container_template[1][0],container_template[1][1])"/> - </TD> - <TD tal:attributes="colspan python:taille_qty+1" align="center">Quantités réparties par tailles</TD> - </TR> - - <SPAN tal:condition="python:len(morphologie_list)==0" - tal:define="taille_list python:delivery_line.Variated_getTailleList(correspondance_tailles)"><!-- S'Il N'Y A PAS DE VARIANTES MORPHOLOGIQUES --> - <TR tal:condition="python:1"> - <TD nowrap><SPAN tal:content="python:'Modèle : %s' %delivery_line.getResourceValue().getId()"/></TD> - <TD rowspan="2" align="center" tal:repeat="index python:range(taille_qty)" - tal:content="python:taille_list[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center" rowspan="2" nowrap>Total</TD> - </TR> - <TR> - - <TD> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Modele'" width="30%" tal:content="python:delivery_line.getResourceValue().getComposition()"/> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Assortiment'" width="30%" tal:content="python:delivery_line.getResourceValue().getDescription()"/> - </TD> - </TR> - - <SPAN tal:condition="python:len(coloris_list[0])>0"> - <TR tal:repeat="index python:range(len(coloris_list[0]))"><!-- BOUCLE SUR LES COLORIS --> - <TD align="left" tal:content="python:'coloris '+coloris_list[1][index]"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[2,3])"/> - <SPAN tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2],coloris_list[2][index])"> - <TD align = right tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2,3],target_quantity)"/> - </SPAN> - <TD align="right" tal:content="python: '%.0f' %totalizer[3]"/> - </TR> - </SPAN> - - <SPAN tal:condition="python:len(coloris_list[0])==0"> - <TR><!-- PAS DE COLORIS --> - <TD align="left"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[2,3])"/> - <SPAN tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2])"> - <TD align = right tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2,3],target_quantity)"/> - </SPAN> - <SPAN tal:condition="python:taille_qty==0" - tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2,3],delivery_line.getTargetQuantity())"/> - <TD align="right" tal:content="python: '%.0f' %totalizer[3]"/> - </TR> - </SPAN> - - <TR> - <TD align = "right" tal:attributes="colspan python:taille_qty+1">Total colis - </TD> - <TD align="right" tal:content="python: '%.0f' %totalizer[1]"> - </TD> - </TR> - </SPAN> - - <SPAN tal:condition="python:len(morphologie_list)>0"><!-- S'Il Y A DES VARIANTES MORPHOLOGIQUES --> - <SPAN tal:repeat="morphologie morphologie_list"> - <SPAN tal:define="taille_list python:delivery_line.Variated_getTailleList(correspondance_tailles,morphologie); - toto python:delivery_line.PT_reset_total_list(totalizer,[3])"><!-- BOUCLE SUR LES VARIANTES MORPHOLOGIQUES --> - <TR tal:condition="python:1"> - <TD nowrap><SPAN tal:content="python:'Modèle : %s' % '/'.join(morphologie.split('/')[1:])"/></TD> - <TD rowspan="2" align="center" tal:repeat="index python:range(taille_qty)" - tal:content="python:taille_list[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center" rowspan="2" nowrap>Total</TD> - </TR> - <TR> - - <TD> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Modele'" width="30%" tal:content="python:delivery_line.getResourceValue().getComposition()"/> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Assortiment'" width="30%" tal:content="python:delivery_line.getResourceValue().getDescription()"/> - </TD> - </TR> - - <TR tal:repeat="index python:range(len(coloris_list[0]))"><!-- BOUCLE SUR LES COLORIS --> - <TD align="left" tal:content="python:'coloris '+coloris_list[1][index]"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[3])"/> - <SPAN tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2],coloris_list[2][index],morphologie)"> - <TD align = right tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2,3],target_quantity)"/> - </SPAN> - <TD align="right" tal:content="python: '%.0f' %totalizer[3]"/> - </TR> - </SPAN> - <TR> - <TD align = "right" tal:attributes="colspan python:taille_qty+1">Total colis - </TD> - <TD align="right" tal:content="python: '%.0f' %totalizer[1]"> - </TD> - </TR> - </SPAN> - - </SPAN> - - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split('','\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - </SPAN> - </SPAN> - - <TR> - <TD height="40%"/> - </TR> - <TR> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='BLS'" align="center">BLS - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 86 26 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 10.000 € - T.V.A. FR 51 442 959 243 - R.C. Dunkerque 442 959 243 - SIRET 442 959 243 00019</p> - </TD> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='Houvenaegel'" align="center">Houvenaegel Création - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 55 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 7.622,45 € - T.V.A. FR 07 422 769 810 - R.C. Dunkerque 422 769 810 - SIRET 422 769 810 00025</p> - </TD> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='Coramy'" align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_container_view.form b/product/Coramy/skins/coramy_trade/sales_packing_list_container_view.form deleted file mode 100755 index 8cf0dae485faa789b4a229a91d90a89573c632b5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_container_view.form +++ /dev/null @@ -1,685 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison vente</title> - <row_length>4</row_length> - <name>sales_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getSourceAdministrationTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° commande client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue().getDestinationReference()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>destination_address</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Lieu livraison : inconnu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python: here.getDestinationValue(portal_type=['Organisation']).Organisation_getOneLineAddress()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_section</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Expédition prévue le : ' + here.getStartDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Livraison prévue le : ' + here.getStopDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('Id', 'Colis'), ('int_index', 'Num\xe9ro'), ('resource_title', 'Conteneur'), ('variation_text', 'Variantes'), ('gross_weight', 'Poids brut'), ('target_total_quantity', 'Quantit\xe9 colis\xe9e'), ('Description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('gross_weight', 'gross_weight')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>container_list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Container', 'Container')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>container_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns type="list">[]</sort_columns> - <stat_method></stat_method> - <title>Colis</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_gross_weight</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Poids brut</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_list.form b/product/Coramy/skins/coramy_trade/sales_packing_list_list.form deleted file mode 100755 index 212dab41cd8e7b1c15115f444cb7e1bfe2f8c7cf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_list.form +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste de livraisons</title> - <row_length>4</row_length> - <name>sales_packing_list_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Livraison'), ('default_causality_id', 'Commande'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('default_destination_title', 'Livrer \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Livraison'), ('default_causality_id', 'Commande'), ('default_source_section_title', 'Soci\xe9t\xe9'), ('default_destination_title', 'Livrer \xe0'), ('target_start_date', "Date d'exp\xe9dition"), ('target_stop_date', 'Date de livraison'), ('causality_state', 'Coh\xe9rence'), ('simulation_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sales Packing List', 'Sales Packing List')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns type="list">[]</search_columns> - <select type="int">1</select> - <selection_name>sales_packing_list_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Livraisons de vente</title> - </values> - <tales> - <list_method>python:here.getPortalObject().portal_skins.local_list_method[here.REQUEST.list_method_id]</list_method> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_print.pt b/product/Coramy/skins/coramy_trade/sales_packing_list_print.pt deleted file mode 100755 index 038ab2075b5878d2115de6f8f8acd895c702155b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_print.pt +++ /dev/null @@ -1,200 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </HEAD> - <BODY bgcolor="#ffffff" tal:define="delivery_list python:here.object_action_list(selection_name='sales_packing_list_selection',max_nb=10); - page_number python:[0]"> - <TABLE tal:repeat="delivery delivery_list" width="660" height="955" cellpadding="0" cellspacing="0" tal:attributes="class python:here.PT_pageBreak(page_number)"> - <TABLE border="0" width="660" height="900" cellpadding="0" cellspacing="0" - tal:define="order python:delivery.getCausalityValue(portal_type=['Sales Order','Sales Packing List']); - destination python:delivery.getDestinationValue(portal_type=['Organisation']); - delivery_line_list python:filter(lambda line_item: line_item.getTargetTotalQuantity() > 0, delivery.contentValues(filter={'portal_type': - 'Sales Packing List Line'})); - totalizer python:[0,0,0]"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="Titre" tal:content="python:delivery.getSourceSectionTitle()">Coramy</TD> - <TD align="center"> - <span class="Titre2">Bordereau de livraison<span tal:content="python:' n° '+delivery.getId()"/></span><br> - Lieferschein Nr / Delivery note N° - </TD> - <TD align="right"> - <span tal:content="python:'Gravelines, le '+str(delivery.DateTime_getFormattedDate())"/> - </TD> - </TR> - </TABLE> - </TD> - </TR> - <TR height="18%"><!-- Infos --> - <TD><br> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD nowrap align="center" class="Bordereau">Commande N°<br>Auftrag Nr / Order N°<br><span class="Normal" tal:content="python:order.getDestinationReference()" /></TD> - <TD nowrap align="center" class="Bordereau" >Poids brut (Kg)<br>Brutto-gewicht / Gross weight <br><span class="Normal" tal:content="python:delivery.PackingList_getTotalGrossWeight()" /></TD> - <TD nowrap rowspan="3"> - <SPAN tal:condition="python:destination<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(destination.getTitle())"/></b> - <br><SPAN tal:condition="python:destination.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(destination.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - <TD nowrap align="center" rowspan="2" class="Bordereau">Port<br>Porto / Freight<br><span class="Normal" tal:content="python:delivery.getIncoterm()" /></TD> - </TR> - <TR> - <TD nowrap align="center" class="Bordereau">Confirmation N°<br>Bestätigung Nr <br><span class="Normal" tal:content="python:order.getId()" /></TD> - <TD nowrap align="center" class="Bordereau">Nombre de colis<br>Kolli Anzahl / Nb of parcels <br><span class="Normal" tal:content="python:len(delivery.contentValues(filter={'portal_type':'Container'}))" /></TD> - </TR> - <TR> - <TD nowrap align="center" class="Bordereau"> Date d'expédition<br>Versand Tag / Sending Date <br><span class="Normal" tal:content="python:str(here.DateTime_getFormattedDate(delivery.getTargetStartDate()))" /></TD> - <TD nowrap align="center" class="Bordereau" >Nombre d'articles<br>Artikel Anzahl / Nb of items<br><span class="Normal" tal:content="python:delivery.getTargetTotalQuantity()" /></TD> - <TD nowrap align="center" class="Bordereau" >Transporteur <br> Carrier / Spediteur<br><span class="Normal" tal:content="python:delivery.getDeliveryMode()" /></TD> - </TR> - </TABLE> - </TD> - </TR> - - - <SPAN tal:repeat="delivery_line delivery_line_list"> - <TR><!-- Matrice de ligne de livraison --> - <TD> - - <TABLE border="1" width="100%" - tal:define="correspondance_tailles python:delivery_line.getResourceValue().getSpecialiseValue(portal_type=['Correspondance Tailles']); - coloris_list python:delivery_line.Variated_getColorisList(); - taille_qty python:len(delivery_line.Variated_getTailleList(correspondance_tailles)[0]); - morphologie_list python:delivery_line.getMorphologieList(); - toto python:delivery_line.PT_reset_total_list(totalizer,[1]) - "> - <TR> - <TD align="center">Dénomination des produits</TD> - <TD tal:attributes="colspan python:taille_qty+1" align="center">Quantités réparties par tailles</TD> - </TR> - - <SPAN tal:condition="python:len(morphologie_list)==0" - tal:define="taille_list python:delivery_line.Variated_getTailleList(correspondance_tailles)"><!-- S'Il N'Y A PAS DE VARIANTES MORPHOLOGIQUES --> - <TR tal:condition="python:1"> - <TD nowrap><SPAN tal:content="python:'Modèle : %s / %s' % (delivery_line.getResourceValue().getId() , delivery_line.getResourceValue().getDestinationReference(''))"/></TD> - <TD rowspan="2" align="center" tal:repeat="index python:range(taille_qty)" - tal:content="python:taille_list[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center" rowspan="2" nowrap>Total</TD> - </TR> - <TR> - - <TD> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Modele'" width="30%" tal:content="python:delivery_line.getResourceValue().getComposition()"/> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Assortiment'" width="30%" tal:content="python:delivery_line.getResourceValue().getDescription()"/> - </TD> - </TR> - - <SPAN tal:condition="python:len(coloris_list[0])>0"> - <TR tal:repeat="index python:range(len(coloris_list[0]))"><!-- BOUCLE SUR LES COLORIS --> - <TD align="left" tal:content="python:'coloris '+coloris_list[1][index]"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[2])"/> - <SPAN tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2],coloris_list[2][index])"> - <TD tal:condition="python:taille_qty!=0" align = "right" tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2],target_quantity)"/> - </SPAN> - <TD align="right" tal:content="python: '%.0f' %totalizer[2]"/> - </TR> - </SPAN> - - <SPAN tal:condition="python:len(coloris_list[0])==0"> - <TR><!-- PAS DE COLORIS --> - <TD align="left"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[2])"/> - <SPAN tal:condition="python:taille_qty!=0" - tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2])"> - <TD align = right tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2],target_quantity)"/> - </SPAN> - <SPAN tal:condition="python:taille_qty==0" - tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2],delivery_line.getTargetQuantity())"/> - <TD align="right" tal:content="python: '%.0f' %totalizer[2]"/> - </TR> - </SPAN> - - <TR> - <TD tal:attributes="colspan python:taille_qty+1" /> - <TD align="right" tal:content="python: '%.0f' %totalizer[1]"> - </TD> - </TR> - </SPAN> - - <SPAN tal:condition="python:len(morphologie_list)>0"><!-- S'Il Y A DES VARIANTES MORPHOLOGIQUES --> - <SPAN tal:repeat="morphologie morphologie_list"> - <SPAN tal:define="taille_list python:delivery_line.Variated_getTailleList(correspondance_tailles,morphologie); - toto python:delivery_line.PT_reset_total_list(totalizer,[1])"><!-- BOUCLE SUR LES VARIANTES MORPHOLOGIQUES --> - <TR tal:condition="python:1"> - <TD nowrap><SPAN tal:content="python:'Modèle : %s' % '/'.join(morphologie.split('/')[1:])"/></TD> - <TD rowspan="2" align="center" tal:repeat="index python:range(taille_qty)" - tal:content="python:taille_list[1][index]">36</TD><!-- BOUCLE SUR LE NB DE TAILLES --> - <TD align="center" rowspan="2" nowrap>Total</TD> - </TR> - <TR> - - <TD> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Modele'" width="30%" tal:content="python:delivery_line.getResourceValue().getComposition()"/> - <SPAN tal:condition="python:delivery_line.getResourceValue().getPortalType()=='Assortiment'" width="30%" tal:content="python:delivery_line.getResourceValue().getDescription()"/> - </TD> - </TR> - - <TR tal:repeat="index python:range(len(coloris_list[0]))"><!-- BOUCLE SUR LES COLORIS --> - <TD align="left" tal:content="python:'coloris '+coloris_list[1][index]"></TD> - <SPAN tal:define="toto python:delivery_line.PT_reset_total_list(totalizer,[2])"/> - <SPAN tal:repeat="target_quantity python:delivery_line.DeliveryLine_getTargetQuantityList(taille_list[2],coloris_list[2][index],morphologie)"> - <TD align = right tal:content="python: '%.0f' %target_quantity"/> - <SPAN tal:define="toto python:delivery_line.PT_update_total_list(totalizer,[0,1,2],target_quantity)"/> - </SPAN> - <TD align="right" tal:content="python: '%.0f' %totalizer[2]"/> - </TR> - </SPAN> - <TR> - <TD tal:attributes="colspan python:taille_qty+1" /> - <TD align="right" tal:content="python: '%.0f' %totalizer[1]"> - </TD> - </TR> - </SPAN> - - </SPAN> - - </TABLE> - </TD> - </TR> - - <TR tal:define="commentaires_list python:modules['string'].split('','\n')"><!-- Notes --> - <TD valign="top"> - <span tal:repeat="commentaires_item commentaires_list"> - <span tal:content="python:commentaires_item"/></span> - </TD> - </TR> - - </SPAN> - - <TR> - <TD height="40%"/> - </TR> - <TR> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='BLS'" align="center">BLS - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 86 26 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 10.000 € - T.V.A. FR 51 442 959 243 - R.C. Dunkerque 442 959 243 - SIRET 442 959 243 00019</p> - </TD> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='Houvenaegel'" align="center">Houvenaegel Création - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 55 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 7.622,45 € - T.V.A. FR 07 422 769 810 - R.C. Dunkerque 422 769 810 - SIRET 422 769 810 00025</p> - </TD> - <TD tal:condition="python:delivery.getSourceSectionTitle()=='Coramy'" align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> - </TABLE> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_print_remise_transporteur.pt b/product/Coramy/skins/coramy_trade/sales_packing_list_print_remise_transporteur.pt deleted file mode 100755 index f7b53032b3889cbc4da7ba7fb51b2f12c73cdc94..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_print_remise_transporteur.pt +++ /dev/null @@ -1,130 +0,0 @@ -<HTML> - <HEAD> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - <link rel=stylesheet type="text/css" href="modele_catalog_c"> - </HEAD> - <BODY bgcolor="#ffffff" tal:define="delivery_dict python:here.SalesPackingList_buildRemiseTransporteurDict(); - page_number python:[0]"> - <SPAN tal:repeat="societe python:delivery_dict.keys()"> - <SPAN tal:repeat="transporteur python:delivery_dict[societe].keys()" - tal:define="totalizer python:[0,0,0,0]"> - - <TABLE border="0" width="660" height="900" cellpadding="0" cellspacing="0" - tal:define="transporteur_items python:transporteur.split('/'); - pretty_transporteur python:transporteur_items[len(transporteur_items)-1]"><!-- Tableau general --> - <TR> - <TD> - <TABLE border="0" width="100%" height="100%"> - <TR> - <TD class="Titre" tal:content="societe">Coramy</TD> - <TD align="center"> - <span class="Titre2">Remise de colis à <span tal:content="pretty_transporteur"/></span> - </TD> - <TD align="right"> - <span tal:content="python:'Gravelines, le '+str(here.DateTime_getFormattedDate())"/> - </TD> - </TR> - </TABLE> - </TD> - </TR> - <TR height="18%"><!-- Infos --> - <TD><br> - <TABLE border="1" width="100%" height="100%"> - <TR> - <TD>Destinataire - </TD> - <TD nowrap>No Livraison - </TD> - <TD nowrap>No Commande client - </TD> - <TD>Nb Colis - </TD> - <TD>Poids (kg) - </TD> - </TR> - <SPAN tal:repeat="destination_organisation python:delivery_dict[societe][transporteur].keys()" width="660" height="955" cellpadding="0" cellspacing="0" tal:attributes="class python:here.PT_pageBreak(page_number)"> - <TR> - <SPAN tal:define="destination python:here.restrictedTraverse(destination_organisation); - toto python:here.PT_reset_total_list(totalizer,[1,3])"> - <TD valign="top" tal:attributes="rowspan python:len(delivery_dict[societe][transporteur][destination_organisation])+2"> - <SPAN tal:condition="python:destination<>None"> - <b><SPAN tal:content="python:modules['string'].capwords(destination.getTitle())"/></b> - <br><SPAN tal:condition="python:destination.getPortalType()<>'Category'"> - <SPAN tal:define="address_items python:modules['string']. - split(destination.getDefaultAddress().asText(country='France'),'\n')"> - <SPAN tal:repeat="item address_items"> - <SPAN tal:content="item"/><br> - </SPAN> - </SPAN> - </SPAN> - </SPAN> - </TD> - </SPAN> - </TR> - <SPAN tal:repeat="delivery python:delivery_dict[societe][transporteur][destination_organisation]"> - <TR><!-- Détail des livraisons --> - <TD tal:content="python:delivery.getId()"> - </TD> - <TD tal:define="order python:delivery.getCausalityValue(portal_type=['Sales Order'])"> - <SPAN tal:content="python:order.getDestinationReference()"/> - </TD> - <TD align="right" tal:define="colis_nb python:len(delivery.contentValues(filter={'portal_type':'Container'}))"> - <SPAN tal:define="toto python:delivery.PT_update_total_list(totalizer,[0,1],colis_nb)"/> - <SPAN tal:content="colis_nb"/> - </TD> - <TD align="right" tal:define="weight python:delivery.PackingList_getTotalGrossWeight()"> - <SPAN tal:define="toto python:delivery.PT_update_total_list(totalizer,[2,3],weight)"/> - <SPAN tal:content="python:'%.1f' %weight"/> - </TD> - </TR> - </SPAN> - - <TR> <!-- Totaux par destinataire --> - <TD align="right" colspan="2"><b>Sous-total</b> - </TD> - <TD align="right"><b> - <SPAN tal:content="python:totalizer[1]"/></b> - </TD> - <TD align="right"><b> - <SPAN tal:content="python:'%.1f' %totalizer[3]"/></b> - </TD> - </TR> - - </SPAN> - - <TR> <!-- Totaux par transporteur --> - <TD align="right" colspan="3"><b>TOTAL</b> - </TD> - <TD align="right"><b> - <SPAN tal:content="python:totalizer[0]"/></b> - </TD> - <TD align="right"><b> - <SPAN tal:content="python:'%.1f' %totalizer[2]"/></b> - </TD> - </TR> - - <TR> - <TD colspan="5"> - <b><SPAN tal:content="python:'Je reconnais avoir pris en charge %s colis pour un poids approximatif de %s kg pour le compte de la société %s.' %(totalizer[0],totalizer[2],pretty_transporteur)"/></b><br>Le chauffeur - </TD> - </TR> - </TABLE> - </TD> - </TR> - <TR> - <TD tal:condition="python:societe=='BLS'" align="center">BLS - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 86 26 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 10.000 € - T.V.A. FR 51 442 959 243 - R.C. Dunkerque 442 959 243 - SIRET 442 959 243 00019</p> - </TD> - <TD tal:condition="python:societe=='Houvenaegel'" align="center">Houvenaegel Création - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 55 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.R.L. au capital de 7.622,45 € - T.V.A. FR 07 422 769 810 - R.C. Dunkerque 422 769 810 - SIRET 422 769 810 00025</p> - </TD> - <TD tal:condition="python:societe=='Coramy'" align="center">Coramy - 5 bis, rue Denis Cordonnier - 59820 Gravelines (FRANCE)<br>Tél. : + 33 (0) 3 28 51 91 51 - Fax : + 33 (0) 3 28 23 34 96 - <p class="Copy">S.A.S. au capital de 435.200 € - T.V.A. FR 67 611 750 274 - R.C. Dunkerque 611 750 274 - SIRET 611 750 274 00023 - CNUF 15971</p> - </TD> - </TR> - </TABLE> - </SPAN> - </SPAN> - </BODY> -</HTML> diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_secure_print.py b/product/Coramy/skins/coramy_trade/sales_packing_list_secure_print.py deleted file mode 100755 index 9309750966cad3e1b6446988b38888f1ff6f75a0..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_secure_print.py +++ /dev/null @@ -1,19 +0,0 @@ -## Script (Python) "sales_packing_list_secure_print" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='', packing_list_page_template -##title= -## -packing_list = context -request = context.REQUEST - -packing_list.flushActivity(invoke=1) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , packing_list_page_template - , 'portal_status_message=Impression+en+cours.' - ) -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/sales_packing_list_view.form b/product/Coramy/skins/coramy_trade/sales_packing_list_view.form deleted file mode 100755 index f8a166602975e439714d86bf76dc90cad3922a88..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sales_packing_list_view.form +++ /dev/null @@ -1,747 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison vente</title> - <row_length>4</row_length> - <name>sales_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>N° livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_source_section</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Société</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.group.Coramy.getCategoryChildIdItemList(base=1,display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_administration_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source_administration</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Gestionaire</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue(portal_type="Sales Order").getSourceAdministrationTitle()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_incoterm</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Incoterm</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:here.portal_categories.incoterm.getCategoryChildItemList(display_id = 'getTitle', display_none_category=1)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_delivery_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Mode de livraison</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/delivery_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_source_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>source</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Expédié par</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_causality_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_vente</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Sales Order', 'Sales Order')]</portal_type> - <required type="int">0</required> - <title>N° commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_reference</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>N° commande client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getCausalityValue().getDestinationReference()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Livrer à </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>destination_address</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Lieu livraison : inconnu</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python: here.getDestinationValue(portal_type=['Organisation']).Organisation_getOneLineAddress()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_section_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination_section</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation'), ('Category', 'Category'), ('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Pour le compte de</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition prévue</title> - </values> - <tales> - <title>python:'Expédition prévue le : ' + here.getStartDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">1</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison prévue</title> - </values> - <tales> - <title>python:'Livraison prévue le : ' + here.getStopDate().strftime('%d/%m/%Y')</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'simulation_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Objectif quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Objectif quantité : %.2f' % here.getTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_target_total_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <title>python:'Quantité colisée : %.2f' % here.getTargetTotalQuantity()</title> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('resource_title', 'Produit'), ('variation_text', 'Variantes'), ('Amount_getColorisClient', 'Coloris client'), ('Amount_getTailleClient', 'Taille client'), ('Amount_getCodeArticleClient', 'Code article'), ('quantity', 'Objectif quantit\xe9'), ('target_quantity', 'Quantit\xe9 colis\xe9e'), ('quantity_unit', 'Unit\xe9'), ('item_id_list', 'Lots associ\xe9s')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('price', 'price'), ('target_quantity', 'target_quantity'), ('item_id_list', 'item_id_list'), ('quantity_unit', 'quantity_unit')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>folder_contents</list_action> - <list_method type="method">Delivery_zGetNeededCellList</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns type="list">[]</search_columns> - <select type="int">0</select> - <selection_name>delivery_cells_selection</selection_name> - <sort type="list">[('variation_text', 'variation_text')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_item_id_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Pièces en stock</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_target_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Target quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_delivery_count_samples.py b/product/Coramy/skins/coramy_trade/sample_delivery_count_samples.py deleted file mode 100755 index 8922477ebbcf1f672647cc5a141f5bf08a3d96e8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_delivery_count_samples.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "sample_delivery_count_samples" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -sample_delivery = context -lignes_cde = sample_delivery.contentValues(filter={'portal_type':'Delivery Line'}) -total = 0 - -for ligne in lignes_cde: - total += ligne.getQuantity() - -return total diff --git a/product/Coramy/skins/coramy_trade/sample_etiquette_BLS_print.py b/product/Coramy/skins/coramy_trade/sample_etiquette_BLS_print.py deleted file mode 100755 index a16f8ab7d665735c22192e8c7cde634df094bd50..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_etiquette_BLS_print.py +++ /dev/null @@ -1,42 +0,0 @@ -## Script (Python) "sample_etiquette_BLS_print" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -sample_order=context -lignes_list = sample_order.contentValues(filter={'portal_type':'Sample Order Line'}) -request = context.REQUEST -possible_qty=('00300','01000','05000','10000') - -for ligne in lignes_list: - modele=ligne.getDefaultValue('resource',portal_type=['Modele']) - - if modele <> None : - ligne_modele = '' - ligne_modele += modele.getDestinationReference()+'£' - ligne_modele += modele.getCollection()+'£' - ligne_modele += string.capwords(string.lower(modele.composition))+'£' - - price_list = ligne.contentValues(filter={'portal_type':'Element Tarif'}) - - for price in price_list: - printed_price=0 - ligne_modele += string.lower(price.description)+'£' - for qty in possible_qty: - qty_price = price.getCell(None, qty, base_id='destination_base_price') - if qty_price <>None: - printed_price +=1 - ligne_modele += str(int(qty))+'£' - ligne_modele += str(qty_price.getProperty(key='destination_base_price'))+'£' - for i in range(4-printed_price): - ligne_modele += '££' - - print ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return printed diff --git a/product/Coramy/skins/coramy_trade/sample_etiquette_print.py b/product/Coramy/skins/coramy_trade/sample_etiquette_print.py deleted file mode 100755 index 19d69271ef0379bcc62836298b37da0c7d26c030..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_etiquette_print.py +++ /dev/null @@ -1,41 +0,0 @@ -## Script (Python) "sample_etiquette_print" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -sample_order=context -lignes_list = sample_order.contentValues(filter={'portal_type':'Sample Order Line'}) -request = context.REQUEST -possible_qty=('00300','01000','05000','10000') - -for ligne in lignes_list: - modele=ligne.getDefaultValue('resource',portal_type=['Modele']) - - ligne_modele = '' - ligne_modele += modele.getId()+'£' - ligne_modele += modele.getCollection()+'£' - ligne_modele += string.capwords(string.lower(modele.getComposition('')))+'£' - - price_list = ligne.contentValues(filter={'portal_type':'Element Tarif'}) - - for price in price_list: - printed_price=0 - ligne_modele += string.lower(price.getDescription(''))+'£' - for qty in possible_qty: - qty_price = price.getCell(None, qty, base_id='destination_base_price') - if qty_price <>None: - printed_price +=1 - ligne_modele += str(int(qty))+'£' - ligne_modele += str(qty_price.getProperty(key='destination_base_price'))+'£' - for i in range(4-printed_price): - ligne_modele += '££' - - print ligne_modele - -request.RESPONSE.setHeader('Content-Type','application/text') - -return printed diff --git a/product/Coramy/skins/coramy_trade/sample_order_control.pt b/product/Coramy/skins/coramy_trade/sample_order_control.pt deleted file mode 100755 index 752f94e81d8b910f78871d9258c9ddd153bf41fd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_control.pt +++ /dev/null @@ -1,158 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - ordered_lines python:here.sort_object_list(unordered_list=lignes_cde, - sort_order = (('default_resource', 'ASC'),) ) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Commande échantillons : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Client</b></i></td> - <td tal:content="client/getTitle">77H</td> - <td><i><b>Livrer à partir du</b></i></td> - <td tal:content="here/getStartDate"></td> - <td></td> - </tr> - <tr> - <td><i><b>Acheteur</b></i></td> - <td> - <span tal:condition="python:acheteur<>None" - tal:content="acheteur/getTitle"> - </span> - </td> - <td><i><b>Livrer avant le</b></i></td> - <td tal:content="here/getStopDate"></td> - <td></td> - </tr> - <tr> - <td valign="top"><i><b>Commentaires</b></i> </td> - <td colspan="3" tal:content="here/getCommentaires">comments</td> - <td></td> - </tr> - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>N°</b></i></td> - <td align=center><i><b>Description</b></i></td> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Coloris</b></i></td> - <td align=center><i><b>Taille</b></i></td> - <td align=center><i><b>Quantité</b></i></td> - <td align=center><i><b>Etat modèle</b></i></td> - <td align=center><i><b>Transformation</b></i></td> - <td align=center><i><b>Prix</b></i></td> - </tr> - <span tal:repeat="ligne ordered_lines"> - <tr tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele'])"> - - <td align=right tal:content="ligne/getId"></td> - - <td align=right tal:content="ligne/getDescription"></td> - - <td align=center> - <span tal:condition="python:modele<>None"> - <span tal:content="python:modele.getId()">resource</span> - </span> - </td> - - <td align=center> - <span tal:condition="python:modele <> None and ligne.getColoris() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center> - <span tal:condition="python:modele<>None and ligne.getTaille() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getTaille(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center tal:content="python: '%.0f' % ligne.getQuantity()">2</td> - <td align=left tal:content="ligne/sample_order_line_modele_state">etat</td> - - <td align=left> - <span tal:condition="python:modele <> None"> - <span tal:define="transformation python:modele.modele_transformation()" - tal:condition="python:transformation<>None"> - <span tal:content="python:transformation.portal_workflow.getInfoFor(transformation, 'transform_state')">etat</span> - </span> - </span> - </td> - - <td align=left tal:define="tarif_list python:ligne.contentValues(filter={'portal_type':'Element Tarif'})"> - <span tal:repeat="tarif_item tarif_list"> - <span tal:content="python:'%s ' %tarif_item.getDestinationBasePrice()">prix</span> - </span> - </td> - - </tr> - </span> - <tr> - <td colspan="3"></td> - <td align=center><b><i>Total</i></b></td> - <td align=center tal:content="python: '%.0f' %here.sample_order_count_samples()"><b><i>Total</i></b></td> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/sample_order_count_samples.py b/product/Coramy/skins/coramy_trade/sample_order_count_samples.py deleted file mode 100755 index ef86d4fe0a27fe552d17312dc53ca63fb6a0b048..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_count_samples.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "sample_order_count_samples" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -sample_order = context -lignes_cde = sample_order.contentValues(filter={'portal_type':'Sample Order Line'}) -total = 0 - -for ligne in lignes_cde: - total += ligne.getQuantity() - -return total diff --git a/product/Coramy/skins/coramy_trade/sample_order_export.py b/product/Coramy/skins/coramy_trade/sample_order_export.py deleted file mode 100755 index a6c632af6b3ccec451340de7535c4809633cfb19..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_export.py +++ /dev/null @@ -1,45 +0,0 @@ -## Script (Python) "sample_order_export" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -sample_order=context -lignes_list = sample_order.contentValues(filter={'portal_type':'Sample Order Line'}) -request = context.REQUEST -possible_qty=('00300','01000','05000','10000') -tab = '\t' -cr = '\r' -ligne_modele = '' - -for ligne in lignes_list: - modele=ligne.getDefaultValue('resource',portal_type=['Modele']) - - ligne_modele += modele.getId()+tab - ligne_modele += modele.getCollection()+tab - ligne_modele += string.capwords(string.lower(modele.getComposition('')))+tab - ligne_modele += modele.getCodeEan13()+tab - ligne_modele += string.lower(modele.getDescription('')[0:20])+tab - - price_list = ligne.contentValues(filter={'portal_type':'Element Tarif'}) - - for price in price_list: - printed_price=0 - ligne_modele += string.lower(price.getDescription(''))+tab - for qty in possible_qty: - qty_price = price.getCell(None, qty, base_id='destination_base_price') - if qty_price <>None: - printed_price +=1 - ligne_modele += str(int(qty))+tab - ligne_modele += str(qty_price.getProperty(key='destination_base_price'))+tab - for i in range(3-printed_price): - ligne_modele += tab+tab - - ligne_modele += cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return ligne_modele diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_compute_price.py b/product/Coramy/skins/coramy_trade/sample_order_line_compute_price.py deleted file mode 100755 index 88487268a4ec92060364dfe283018eb87bf7b7a8..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_compute_price.py +++ /dev/null @@ -1,33 +0,0 @@ -## Script (Python) "sample_order_line_compute_price" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id, selection_index, selection_name, batch_mode=0 -##title=Update Quantity Price for Element Tarif -## -# First define some data -# which should better be defined as portal data - -message = "" -request = context.REQUEST - -for o in context.searchFolder(portal_type='Element Tarif'): - o = o.getObject() - error = o.element_tarif_compute_price(form_id=form_id, selection_index=selection_index, selection_name=selection_name, batch_mode=1) - if error is not None: - message += error - -if batch_mode: - return message -else: - if message is None: - message = "Price updated" - redirect_url = '%s/%s?selection_index=%s&selection_name=%s&%s' % ( context.absolute_url() - , form_id - , selection_index - , selection_name - , 'portal_status_message=%s' % message - ) - request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_copy_price.py b/product/Coramy/skins/coramy_trade/sample_order_line_copy_price.py deleted file mode 100755 index 8e09c43f73753e5df71df65476e50a4f5ed29d7f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_copy_price.py +++ /dev/null @@ -1,88 +0,0 @@ -## Script (Python) "sample_order_line_copy_price" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST - -# First define some data -# which should better be defined as portal data -cout_minute_france = 0.348 -cout_minute_tunisie = 0.174 -cout_fixe_article = 0.404 -ratio_securite_temps = 1.075 -ratio_securite_appro = 1.07 -france_ratio_dict = { - 'F0_T100' : 0.0, - 'F20_T80' : 0.2, - 'F50_T50' : 0.5, - 'F80_T20' : 0.8, - 'F100_T0' : 1.0 -} -coef_qte_dict = {} -coef_qte_dict['00300'] = 85.0/72.5 -coef_qte_dict['01000'] = 1 -coef_qte_dict['05000'] = 85.0/92.5 -coef_qte_dict['10000'] = 0.88 - -ligne = context -modele = ligne.getDefaultValue('resource',portal_type=['Modele']) - -if modele <> None : - modele_tarif_list = modele.contentValues(filter={'portal_type':'Element Tarif'}) - if modele.getTarif() <> ligne.getTarif() and modele.getTempsPiquage() == 0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Pas+de+temps+de+piquage+pour+ce+modele.' - ) - else : - for modele_tarif in modele_tarif_list : - ligne.invokeFactory(type_name="Element Tarif", - id=modele_tarif.id, - RESPONSE=request.RESPONSE) - ligne[modele_tarif.id].edit(description = modele_tarif.getDescription(), category_list = modele_tarif.getCategoryList(), commentaires = modele_tarif.getCommentaires()) - ligne[modele_tarif.id].setCellRange([None],ligne[modele_tarif.id].getQuantityRangeList(),base_id='destination_base_price') - for q in ligne[modele_tarif.id].getQuantityRangeList(): - price_value = 0 - ecart = 0 - if modele.getTarif() == ligne.getTarif() : - price_value = modele_tarif.getCell(None, q, base_id='destination_base_price').destination_base_price*ligne.getCoefMarge()/modele.getCoefMarge() - else : - price_value = modele_tarif.getCell(None, q, base_id='destination_base_price').destination_base_price/modele.getCoefMarge() - if modele.getCoefMajoration() <> 0 : - price_value = price_value/modele.getCoefMajoration() - ecart = (france_ratio_dict[ligne.getTarif()]*cout_minute_france+(1-france_ratio_dict[ligne.getTarif()])*cout_minute_tunisie)*modele.getTempsPiquage()*1.075 - ecart += -1*(france_ratio_dict[modele.getTarif()]*cout_minute_france+(1-france_ratio_dict[modele.getTarif()])*cout_minute_tunisie)*modele.getTempsPiquage()*1.075 - price_value += ecart*coef_qte_dict[q] - price_value = price_value*ligne.getCoefMarge() - - if ligne.getCoefMajoration() <> 0 : - price_value = price_value*ligne.getCoefMajoration() - cell = ligne[modele_tarif.id].newCell(None, q, base_id='destination_base_price') - cell.edit(mapped_value_attribute_list = ('destination_base_price',), - domain_base_category_list = ('quantity_range',), - predicate_operator = 'SUPERSET_OF', - predicate_value_list = ('quantity_range/%s' % q,), - destination_base_price = round(price_value,2)) - if q == '01000' : - ligne[modele_tarif.id].edit(destination_base_price = round(price_value,2)) - - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=%s+elements+de+tarif+crees.'%len(modele_tarif_list) - ) - -else : - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Problème+de+modèle.' - ) - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_list.form b/product/Coramy/skins/coramy_trade/sample_order_line_list.form deleted file mode 100755 index 2fae69a64c11809b5c9b30674977dcbcb142c442..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des livraisons</title> - <row_length>4</row_length> - <name>packing_list_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sample Order Line', 'Sample Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_modele_state.py b/product/Coramy/skins/coramy_trade/sample_order_line_modele_state.py deleted file mode 100755 index 0bfa429e26567c91557d1bf3ea48603255e7c30a..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_modele_state.py +++ /dev/null @@ -1,17 +0,0 @@ -## Script (Python) "sample_order_line_modele_state" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -modele = context.getDefaultValue('resource',portal_type=['Modele']) - -if modele : - modele_state = modele.portal_workflow.getInfoFor(modele, 'modele_state') -else : - modele_state = "" - -return modele_state diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_search.zsql b/product/Coramy/skins/coramy_trade/sample_order_line_search.zsql deleted file mode 100755 index 65652f5419d3ab35c098e008d10b26c63b8eb28e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_search.zsql +++ /dev/null @@ -1,13 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:300 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT DISTINCT ligne.id, ligne.relative_url, ligne.path, ligne.Description -FROM catalog AS ligne -WHERE ligne.portal_type="Sample Order Line" diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_theme_sort.py b/product/Coramy/skins/coramy_trade/sample_order_line_theme_sort.py deleted file mode 100755 index db422cf57836a240e15bd70f40662a00b6bf9b83..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_theme_sort.py +++ /dev/null @@ -1,35 +0,0 @@ -## Script (Python) "sample_order_line_theme_sort" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id -##title= -## -request = context.REQUEST -samples_order = context -sample_order_line_list = samples_order.objectValues() -theme_list = samples_order.getThemes().split("\n") -theme_dict = {} - -for index in range(len(theme_list)) : - theme_dict[theme_list[index]] = index+1 - -for sample_order_line in sample_order_line_list : - if sample_order_line.getTheme() in theme_list : - theme_index = theme_dict[sample_order_line.getTheme()] - else : - theme_index = len(theme_list)+1 - - sample_order_line.edit(theme_index = theme_index) - - - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=lignes+triées.' - ) - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/sample_order_line_view.form b/product/Coramy/skins/coramy_trade/sample_order_line_view.form deleted file mode 100755 index d3f217a0b676529e8ecef9294252853f24b1cf0c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_line_view.form +++ /dev/null @@ -1,745 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Ligne de commande</title> - <row_length>4</row_length> - <name>order_line_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Ligne n°</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_resource_relative_url</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>resource</base_category> - <catalog_index>relative_url</catalog_index> - <css_class></css_class> - <default></default> - <default_module>modele</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">40</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Composant', 'Composant'), ('Tissu', 'Tissu'), ('Modele', 'Modele'), ('Forme', 'Forme'), ('Vetement', 'Vetement'), ('Category', 'Category'), ('Gamme', 'Gamme')]</portal_type> - <required type="int">0</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_coloris</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')] + here.getVariationRangeCategoryItemList(base_category_list=['coloris'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[('','')] + here.getVariationRangeCategoryItemList(base_category_list=['taille'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>modele_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getOrderLineModeleState()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/getQuantityUnitRangeItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Prix facturé</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_tarif</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Tarif</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/tarif/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_cout_additionnel</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coût sup. (euros)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_marge</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coef. de marge</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_majoration</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Coef. majoration</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>transform_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat transformation</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.getOrderLineTransformationState()</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</all_columns> - <all_editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'quantity_range_list')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'El\xe9ment'), ('description', 'Description'), ('coloris_list', 'Coloris'), ('taille_list', 'Tailles'), ('default_taille', 'Taille centrale'), ('quantity_range_list', 'Quantit\xe9s'), ('destination_base_price', 'Prix par d\xe9faut')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('description', 'description'), ('taille_list', 'tailles_list'), ('default_taille', 'Taille par d\xe9faut'), ('coloris_list', 'coloris_list'), ('destination_base_price', 'price'), ('quantity_range_list', 'quantity_range_list')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[('predicate_operator', 'predicate_operator'), ('mapped_value_property_list', 'mapped_value_property_list'), ('domain_base_category_list', 'domain_base_category_list')]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">20</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Element Tarif', 'Element Tarif')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>elements_tarif_selection</selection_name> - <sort type="list">[]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Eléments de tarif</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>domain_base_category_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['taille', 'coloris']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Valid Domain</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>mapped_value_property_list</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">['destination_base_price']</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">1</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Modified categories</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>predicate_operator</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>SUPERSET_OF</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Operator</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_coloris_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Coloris</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['coloris'], base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_default_taille</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Taille centrale</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>here/getDefaultTaille</default> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">2</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Description</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">20</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>listbox_destination_base_price</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>Price</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_taille_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Tailles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.getVariationRangeCategoryItemList(base_category_list=['taille'],base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_quantity_range_list</id> <type>MultiListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">5</size> - <title>Quantités</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - </values> - <tales> - <items>python:here.portal_categories.quantity_range.getBaseItemList(base=0)</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_lines_to_prepare.pt b/product/Coramy/skins/coramy_trade/sample_order_lines_to_prepare.pt deleted file mode 100755 index 480d3deb6fb062568ac796564f4b2210dc0562ba..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_lines_to_prepare.pt +++ /dev/null @@ -1,84 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="filtered_models python:here.filtered_sample_order_lines(); - sorted_models python:filtered_models.keys(); - nada python:sorted_models.sort()"> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red">Modèles échantillonnés</font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Nombre total</b></i></td> - <td tal:content="python:len(filtered_models)"/> - </tr> - - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Date</b></i></td> - <td align=center><i><b>Clients</b></i></td> - <td align=center><i><b>Etat</b></i></td> - </tr> - - <tr tal:repeat="i python:range(len(sorted_models))"> - <td tal:content="python:sorted_models[i]"/> - <td tal:content="python:filtered_models[sorted_models[i]]['date']"/> - <td tal:content="python:filtered_models[sorted_models[i]]['client']"/> - <td tal:content="python:filtered_models[sorted_models[i]]['etat']"/> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/sample_order_list.form b/product/Coramy/skins/coramy_trade/sample_order_list.form deleted file mode 100755 index 44552818e6557e8ae052b2c9277e51038454ef04..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des commandes</title> - <row_length>4</row_length> - <name>order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_destination_title', 'Client'), ('buyer_title', 'Acheteur'), ('Description', 'Description'), ('order_state', 'Etat'), ('stop_date', 'Date')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Commande'), ('default_destination_title', 'Client'), ('buyer_title', 'Acheteur'), ('Description', 'Description'), ('order_state', 'Etat'), ('stop_date', 'Date')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Samples Order', 'Samples Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Commandes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_modele_search.form b/product/Coramy/skins/coramy_trade/sample_order_modele_search.form deleted file mode 100755 index 143476dc658238b5ec1a2bf8b25cacfd2871f6f5..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_modele_search.form +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>sample_order_modele_search_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modele_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_modele_search_list.form b/product/Coramy/skins/coramy_trade/sample_order_modele_search_list.form deleted file mode 100755 index 8bed0d335d18a239e3d9230652a6acde15edbc86..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_modele_search_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des commandes</title> - <row_length>4</row_length> - <name>order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Commande'), ('default_destination_title', 'Client'), ('buyer_title', 'Acheteur'), ('Description', 'Description'), ('order_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Commande'), ('default_destination_title', 'Client'), ('buyer_title', 'Acheteur'), ('Description', 'Description'), ('order_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">sample_order_sql_modele_search</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Samples Order', 'Samples Order')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>order_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Commandes</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_print.pt b/product/Coramy/skins/coramy_trade/sample_order_print.pt deleted file mode 100755 index 79a9489b94484beecba457859b6ff2ffad8f8ab6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_print.pt +++ /dev/null @@ -1,133 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - acheteur python:here.getDefaultValue('contact',portal_type=['Person']); - lignes_cde python:here.contentValues(filter={'portal_type':'Sample Order Line'}); - ordered_lines python:here.sort_object_list(unordered_list=lignes_cde, - sort_order = (('default_resource', 'ASC'),) ) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Commande échantillons : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Client</b></i></td> - <td tal:content="client/getTitle">77H</td> - <td><i><b>Livrer à partir du</b></i></td> - <td tal:content="here/getStartDate"></td> - <td></td> - </tr> - <tr> - <td><i><b>Acheteur</b></i></td> - <td tal:content="acheteur/getTitle">77H</td> - <td><i><b>Livrer avant le</b></i></td> - <td tal:content="here/getStopDate"></td> - <td></td> - </tr> - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>N°</b></i></td> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Coloris</b></i></td> - <td align=center><i><b>Taille</b></i></td> - <td align=center><i><b>Quantité</b></i></td> - <td align= center ><i><b>Description</b></i></td> - </tr> - <span tal:repeat="ligne ordered_lines"> - <tr> - <td align=right tal:content="structure python:'<font size=-2>'+ligne.getId()+'</font>'" nowrap></td> - <span tal:define="url_items python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')"> - <td align=center tal:content="python:url_items[len(url_items)-1]" nowrap >resource</td> - </span> - - <td align=center nowrap > - <span tal:condition="python:ligne.getDefaultResource()<>None and ligne.getColoris() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center nowrap > - <span tal:condition="python:ligne.getDefaultResource()<>None and ligne.getTaille() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getTaille(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center tal:content="python: '%.0f' % ligne.getQuantity()" nowrap >2</td> - - <td align=left> - <span tal:condition="python:ligne.getDefaultResource()<>None" - tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele'])"> - <span tal:content="structure python:'<font size=-2>'+modules['string'].lower(modele.getDescription())+'</font>'"> - </span> - </span> - </td> - - - </tr> - </span> - <tr> - <td colspan="3"></td> - <td align=center><b><i>Total</i></b></td> - <td align=center tal:content="python: '%.0f' %here.sample_order_count_samples()"><b><i>Total</i></b></td> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/sample_order_sql_modele_search.zsql b/product/Coramy/skins/coramy_trade/sample_order_sql_modele_search.zsql deleted file mode 100755 index 6aa2fe74a9eab65b11379255178cf04ced29a61d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_sql_modele_search.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>modele_id</params> -SELECT DISTINCT commande.id, commande.uid, commande.path, commande.relative_url, commande.parent_uid, commande.Description -FROM catalog AS commande, catalog AS ligne_cde, catalog AS modele, category -WHERE ligne_cde.parent_uid=commande.uid -AND modele.id="<dtml-var modele_id>" -AND ligne_cde.uid=category.uid -AND modele.uid=category.category_uid -AND commande.portal_type="Samples Order" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_order_view.form b/product/Coramy/skins/coramy_trade/sample_order_view.form deleted file mode 100755 index 1fe94b07d248131f888203b24c8e5b20668cc09d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_order_view.form +++ /dev/null @@ -1,617 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Commande échantillons</title> - <row_length>4</row_length> - <name>order_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_buyer_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>contact</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>person</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Person', 'Person')]</portal_type> - <required type="int">0</required> - <title>Acheteur</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_description</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">1</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Rayon</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_themes</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Themes</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">30</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_samples_order_type</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Type de commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/samples_order_type/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_commande_origine</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Origine de la commande</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/commande_origine/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_date_rdv</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Commande reçue le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_collection</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Collection</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/collection/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer avant le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>order_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'order_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9'), ('theme', 'Theme'), ('sort_index', 'Ordre')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Composant'), ('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9'), ('theme', 'Theme'), ('sort_index', 'Ordre')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9'), ('quantity_unit', 'Unit\xe9'), ('theme', 'Theme'), ('sort_index', 'Ordre')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>sample_order_line_list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Sample Order Line', 'Sample Order Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de commande</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>listbox_sort_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">5</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Ordre</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>listbox_theme_index</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>listbox_theme_index</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>listbox_theme</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>listbox_theme</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>python:[""]+here.getThemes().split("\n")</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/sample_price2.py b/product/Coramy/skins/coramy_trade/sample_price2.py deleted file mode 100755 index 788630463d4885909da29dada26ed616781421c9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/sample_price2.py +++ /dev/null @@ -1,34 +0,0 @@ -## Script (Python) "sample_price2" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -REQUEST = context.REQUEST -ligne = context -modele = ligne.getDefaultValue('resource',portal_type=['Modele']) - -if modele <> None : - modele_tarif_list = modele.contentValues(filter={'portal_type':'Element Tarif'}) - for modele_tarif in modele_tarif_list : - modele.manage_copyObjects(modele_tarif.getId(), REQUEST, REQUEST.RESPONSE) - if ligne.cb_dataValid: - ligne.manage_pasteObjects(REQUEST['__cp']) - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=%s+elements+de+tarif+crees.'%len(modele_tarif_list) - ) - -else : - - redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Pas+de+modèle+défini.' - ) - - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/samples_delivered.zsql b/product/Coramy/skins/coramy_trade/samples_delivered.zsql deleted file mode 100755 index 1b80f017519ce78bcb3df687d32460134af7410e..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivered.zsql +++ /dev/null @@ -1,30 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:0 -max_cache:0 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT modele.id, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_livr, catalog AS modele, catalog AS livraison, category AS cat1, category AS cat2, movement - -WHERE ligne_livr.portal_type="Delivery Line" -AND livraison.portal_type="Samples Packing List" -AND ligne_livr.parent_uid=livraison.uid -AND livraison.delivery_state='expediee' - -AND cat2.uid=modele.uid -AND ( cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Coramy.Planches.uid"> -OR cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Etudes.uid"> ) - -AND modele.uid=cat1.category_uid -AND ligne_livr.uid=cat1.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> - -AND movement.uid=ligne_livr.uid - -GROUP BY modele.id -ORDER BY modele.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_sql_order_id_search.zsql b/product/Coramy/skins/coramy_trade/samples_delivery_sql_order_id_search.zsql deleted file mode 100755 index 145c3710f980a600839094af624ed6785678d149..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_sql_order_id_search.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>order_id</params> -SELECT DISTINCT livraison.id, livraison.uid, livraison.path, livraison.relative_url, livraison.parent_uid, livraison.Description -FROM catalog AS livraison, catalog AS commande, category -WHERE commande.id="<dtml-var order_id>" -AND livraison.uid=category.uid -AND category.category_uid=commande.uid -AND category.base_category_uid=<dtml-var "portal_categories.causality.uid"> -AND livraison.portal_type="Samples Packing List" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_annuler_reliquat.form b/product/Coramy/skins/coramy_trade/samples_delivery_workflow_annuler_reliquat.form deleted file mode 100755 index 4fc533b65837b73275c2babcfde42cf7599dd925..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_annuler_reliquat.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Annuler le reliquat</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>annuler_reliquat</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_creer_reliquat.form b/product/Coramy/skins/coramy_trade/samples_delivery_workflow_creer_reliquat.form deleted file mode 100755 index 327e7e9684cd73dcf7d6b7ec793827e45ba56924..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_creer_reliquat.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Créer un reliquat</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>creer_reliquat</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_expedier_livraison.form b/product/Coramy/skins/coramy_trade/samples_delivery_workflow_expedier_livraison.form deleted file mode 100755 index 4b73ea3629255bb149011b94d4f374d132965f8f..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_expedier_livraison.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Expédier la livraison</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>expedier_livraison</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_rectifier_preparation.form b/product/Coramy/skins/coramy_trade/samples_delivery_workflow_rectifier_preparation.form deleted file mode 100755 index 3159ee008791343be8693ff6e82ae3dec69b2f24..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_rectifier_preparation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rectifier la préparation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>rectifier_preparation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_valider_preparation.form b/product/Coramy/skins/coramy_trade/samples_delivery_workflow_valider_preparation.form deleted file mode 100755 index 6e15806431aa51665a4e79a75cea83bfb74cbaf9..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_delivery_workflow_valider_preparation.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la préparation</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_preparation</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_order_create_packing_list.py b/product/Coramy/skins/coramy_trade/samples_order_create_packing_list.py deleted file mode 100755 index f81285ccbaf1855e2562745e11a62db287b186e2..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_create_packing_list.py +++ /dev/null @@ -1,64 +0,0 @@ -## Script (Python) "samples_order_create_packing_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -#request = context.REQUEST -#response = request.RESPONSE -delivery_module = context.getPortalObject().livraison_echantillon -delivery_type = 'Samples Packing List' -delivery_line_type = 'Delivery Line' -order_line_type = 'Sample Order Line' - -# Create a new packing list -order = context.getObject() -new_id = str(delivery_module.generateNewId()) -context.portal_types.constructContent(type_name=delivery_type, - container=delivery_module, - id=new_id, - order_id=order.getId(), - title = order.getTitle(), - target_start_date = order.getStartDate(), - target_stop_date = order.getStopDate(), - ) -delivery = delivery_module[new_id] - - -# delivery.edit( -# source = order.getSource(), -# destination = order.getDestination(), -# causality_reference = order -# ) - -# Create each line -for order_line in context.contentValues(filter={'portal_type':order_line_type}): - order_line_object = order_line.getObject() - if order_line_object is not None: - new_id = order_line_object.getId() - context.portal_types.constructContent(type_name=delivery_line_type, - container=delivery, - id=new_id, - title = order_line_object.getTitle(), - description = order_line_object.getDescription(), - quantity = order_line_object.getQuantity(), - target_quantity = order_line_object.getQuantity(), - target_start_date = order.getStartDate(), - target_stop_date = order.getStopDate(), - resource = order_line_object.getResource(), - quantity_unit = order_line_object.getQuantityUnit() - ) - delivery[new_id].setVariationCategoryList(order_line_object.getVariationCategoryList()) - -# If we do this before, each added line will take 20 times more time -# because of programmable acquisition -delivery.edit( - source = order.getSource(), - destination = order.getDestination(), - causality_value = order -) - -return delivery diff --git a/product/Coramy/skins/coramy_trade/samples_order_element_tarif_create.py b/product/Coramy/skins/coramy_trade/samples_order_element_tarif_create.py deleted file mode 100755 index edfde74788085a8331471498277a2065aea02c71..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_element_tarif_create.py +++ /dev/null @@ -1,26 +0,0 @@ -## Script (Python) "samples_order_element_tarif_create" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id='' -##title= -## -request = context.REQUEST -order = context - -order_line_list = order.contentValues(filter={'portal_type':'Sample Order Line'}) -for order_line in order_line_list : - elements_tarif_list = order_line.contentValues(filter={'portal_type':'Element Tarif'}) - - order_line.invokeFactory(type_name="Element Tarif", - id="t"+str(len(elements_tarif_list)), - RESPONSE=request.RESPONSE) - -redirect_url = '%s/%s?%s' % ( context.absolute_url() - , form_id - , 'portal_status_message=Eléments+de+tarif+créés.' - ) - -request[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/samples_order_selection_to_list.py b/product/Coramy/skins/coramy_trade/samples_order_selection_to_list.py deleted file mode 100755 index 81faf3e7208940eab39406def3b0046fecef5d1c..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_selection_to_list.py +++ /dev/null @@ -1,20 +0,0 @@ -## Script (Python) "samples_order_selection_to_list" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -selection = context.portal_selections.getSelectionFor('order_selection',REQUEST=context.REQUEST) -order_sql_list = selection(context=context) -request = context.REQUEST -order_id_list =[] - -for order_item in order_sql_list : - order=order_item.getObject() - if order <> None : - order_id_list.append(order.getId()) - -return order_id_list diff --git a/product/Coramy/skins/coramy_trade/samples_order_suivi.pt b/product/Coramy/skins/coramy_trade/samples_order_suivi.pt deleted file mode 100755 index d8229b23462b6cac5ea982c806ebddf597ef52d7..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_suivi.pt +++ /dev/null @@ -1,99 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - - <body bgcolor="#ffffff" - tal:define="order_id_list python:here.samples_order_selection_to_list(); - order_list python:here.find_order_lines_sql_order_list(order_list=order_id_list)"> - -<table width="954" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red">Suivi de l'échantillonnage</font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="952" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="952" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>Cde</b></i></td> - <td align=center><i><b>Client</b></i></td> - <td align=center><i><b>Acheteur</b></i></td> - <td align=center><i><b>Rayon</b></i></td> - <td align=center><i><b>Etat</b></i></td> - <td align=center><i><b>Date demandée</b></i></td> - <td align=center><i><b>Qté demandée</b></i></td> - <td align=center><i><b>Livraison 1</b></i></td> - <td align=center><i><b>Qté livrée</b></i></td> - <td align=center><i><b>Livraison 2</b></i></td> - <td align=center><i><b>Qté livrée</b></i></td> - <td align=center><i><b>Livraison 3</b></i></td> - <td align=center><i><b>Qté livrée</b></i></td> - </tr> - <tr tal:repeat="order_item order_list"> - <span tal:define="order python:order_item.getObject()"> - <td align="center" tal:content="python:order_item.id"> - </td> - <td tal:content="python:order_item.default_destination_title"> - </td> - <td tal:define="acheteur python:order.getDefaultValue('contact',portal_type=['Person'])"> - <span tal:condition="python:acheteur <> None"> - <span tal:content="python:acheteur.getTitle()"/> - </span> - </td> - <td tal:content="python:order.getDescription()"> - </td> - <td> - <span tal:condition="python:order <> None"> - <span tal:content="python:order.portal_workflow.getInfoFor(order, 'order_state')"/> - </span> - </td> - <td tal:content="python:order.getStopDate()"> - </td> - <td align="center" tal:content="python:int(order_item.quantity)"> - </td> - <span tal:define="delivery_list python:here.find_delivery_lines_sql_order_list(order_list=[order_item.id,])"> - <span tal:repeat="delivery_item delivery_list"> - <span tal:define="delivery python:delivery_item.getObject()"> - <td tal:content="python:delivery.getStartDate()"/> - <td align="center" tal:content="python:int(delivery_item.quantity)"/> - </span> - </span> - </span> - </span> - </tr> - - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="952" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_livraison.form b/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_livraison.form deleted file mode 100755 index e110e386a475c268fc186b4ea8c06feabbfe832b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_livraison.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Préparer une livraison</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>preparer_livraison</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_nouvelle_livraison.form b/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_nouvelle_livraison.form deleted file mode 100755 index 2c94d7af561cda7d88727e136d1bfb09e89602c6..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_workflow_preparer_nouvelle_livraison.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Préparer une livraison</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>preparer_nouvelle_livraison</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_order_workflow_valider_commande.form b/product/Coramy/skins/coramy_trade/samples_order_workflow_valider_commande.form deleted file mode 100755 index df03b04a6cfcbcf1a1deeccc3592c32f3e4da4bf..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_order_workflow_valider_commande.form +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Valider la commande</title> - <row_length>4</row_length> - <name>main</name> - <pt>form_view_dialog</pt> - <action>workflow_status_modify</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>my_comment</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">5</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - <field><id>my_workflow_action</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>valider_commande</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">1</hidden> - <max_length></max_length> - <required type="int">1</required> - <title> </title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_ordered.zsql b/product/Coramy/skins/coramy_trade/samples_ordered.zsql deleted file mode 100755 index 659d01f1e7791b9e25596f601bf7380bf3565ba1..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_ordered.zsql +++ /dev/null @@ -1,29 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:0 -max_cache:0 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT modele.id, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_cde, catalog AS modele, catalog AS commande, category AS cat1, category AS cat2, movement -WHERE commande.portal_type="Samples Order" -AND commande.order_state="active" -AND ligne_cde.parent_uid=commande.uid -AND ligne_cde.portal_type="Sample Order Line" - -AND modele.uid=cat1.category_uid -AND ligne_cde.uid=cat1.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> - -AND cat2.uid=modele.uid -AND ( cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Coramy.Planches.uid"> -OR cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Etudes.uid"> ) - -AND movement.uid=ligne_cde.uid - -GROUP BY modele.id -ORDER BY modele.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_ordered_delivered.zsql b/product/Coramy/skins/coramy_trade/samples_ordered_delivered.zsql deleted file mode 100755 index 8607b48785b40ed91c8c48d5688de22ff37bab56..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_ordered_delivered.zsql +++ /dev/null @@ -1,37 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:0 -max_cache:0 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params></params> -SELECT modele.id, SUM(movement.quantity) AS quantity -FROM catalog AS ligne_livr, catalog AS modele, catalog AS livraison, -catalog AS commande, category AS cat1, category AS cat2, category AS cat3, movement - -WHERE ligne_livr.portal_type="Delivery Line" -AND livraison.portal_type="Samples Packing List" -AND ligne_livr.parent_uid=livraison.uid -AND livraison.delivery_state='expediee' - -AND livraison.uid=cat3.uid -AND commande.uid=cat3.category_uid -AND cat3.base_category_uid = <dtml-var "portal_categories.causality.uid"> -AND commande.portal_type="Samples Order" -AND commande.order_state="active" - -AND cat2.uid=modele.uid -AND ( cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Coramy.Planches.uid"> -OR cat2.category_uid = <dtml-var "portal_categories.collection['2004'].Etudes.uid"> ) - -AND modele.uid=cat1.category_uid -AND ligne_livr.uid=cat1.uid -AND cat1.base_category_uid=<dtml-var "portal_categories.resource.uid"> - -AND movement.uid=ligne_livr.uid - -GROUP BY modele.id -ORDER BY modele.id \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_list.form b/product/Coramy/skins/coramy_trade/samples_packing_list_list.form deleted file mode 100755 index c2f9b96e71e92eeb7b99f1b210f171b3c974d350..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des livraisons</title> - <row_length>4</row_length> - <name>packing_list_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Livraison'), ('order_id', 'Commande'), ('default_destination_title', 'Client'), ('target_stop_date', 'Date demand\xe9e'), ('start_date', "Date d'exp\xe9dition"), ('delivery_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Livraison'), ('order_id', 'Commande'), ('default_destination_title', 'Client'), ('target_stop_date', 'Date demand\xe9e'), ('start_date', "Date d'exp\xe9dition"), ('delivery_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">portal_catalog</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Samples Packing List', 'Samples Packing List')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>delivery_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Livraisons</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search.form b/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search.form deleted file mode 100755 index 8e53843868eaf201519a8e854b6b06b0b03af6bd..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search.form +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Rechercher</title> - <row_length>4</row_length> - <name>search</name> - <pt>form_dialog</pt> - <action>samples_packing_list_modele_search_list</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modele_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">60</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Modèle</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search_list.form b/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search_list.form deleted file mode 100755 index 828e495c5042a7460168f90cbe6f1302acc45037..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_modele_search_list.form +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Liste des livraisons</title> - <row_length>4</row_length> - <name>order_list</name> - <pt>form_list</pt> - <action></action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>Default</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Livraison'), ('order_id', 'Commande'), ('default_destination_title', 'Client'), ('target_stop_date', 'Date demand\xe9e'), ('start_date', "Date d'exp\xe9dition"), ('delivery_state', 'Etat')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Livraison'), ('order_id', 'Commande'), ('default_destination_title', 'Client'), ('target_stop_date', 'Date demand\xe9e'), ('start_date', "Date d'exp\xe9dition"), ('delivery_state', 'Etat')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">30</lines> - <list_action>list</list_action> - <list_method type="method">samples_packing_list_sql_modele_search</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Samples Packing List', 'Samples Packing List')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">1</search> - <search_columns></search_columns> - <select type="int">1</select> - <selection_name>delivery_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Livraisons</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_print.pt b/product/Coramy/skins/coramy_trade/samples_packing_list_print.pt deleted file mode 100755 index b42a1d8758ed920f1251445e5501d9d71cc020bb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_print.pt +++ /dev/null @@ -1,134 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html> - - <head> - <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> - <title tal:content="here/getTitle">Coramy</title> - - </head> - - <body bgcolor="#ffffff" - tal:define="client python:here.getDefaultValue('destination',portal_type=['Organisation']); - commande python:here.getDefaultValue('causality',portal_type=['Samples Order']); - acheteur python:commande.getDefaultValue('contact',portal_type=['Person']); - lignes_livr python:here.contentValues(filter={'portal_type':'Delivery Line'}); - ordered_lines python:here.sort_object_list(unordered_list=lignes_livr, - sort_order = (('default_resource', 'ASC'),) ) - "> - -<table width="675" border="0" cellpadding="0" cellspacing="0"> - <tr> <!-- Ligne Titre --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td> <div align="center"> - <p><font size="+3" color="red"><span tal:replace="python:'Livraison échantillons : %s' %here.getId()">Modèle - </span></font></p> - </div></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border-top info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td class="line"><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Info --> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" width="100%"> - <tr> - <td><i><b>Client</b></i></td> - <td tal:content="client/getTitle">77H</td> - <td><i><b>Livrer avant le</b></i></td> - <td tal:content="here/getTargetStopDate"></td> - <td></td> - </tr> - <tr> - <td><i><b>Acheteur</b></i></td> - <td tal:content="acheteur/getTitle">77H</td> - <td><i><b>Expédié le</b></i></td> - <td tal:content="here/getStartDate"></td> - <td></td> - </tr> - </table></td> - <td class="line"><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom info --> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td class="line"><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- spacer --> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - <td><img src="spacer1.png" width="1" height="1"></td> - </tr> - <tr> <!-- Border Top Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - <tr> <!-- Ligne commande --> - <td><img src="spacer.png" width="1" height="100%"></td> - <td><table class="border" align="center" width="100%"> - <tr> - <td align=center><i><b>N°</b></i></td> - <td align=center><i><b>Modèle</b></i></td> - <td align=center><i><b>Coloris</b></i></td> - <td align=center><i><b>Taille</b></i></td> - <td align=center><i><b>Quantité</b></i></td> - <td align= center ><i><b>Description</b></i></td> - </tr> - <span tal:repeat="ligne ordered_lines"> - <tr tal:condition="python:ligne.getQuantity()>0"> - <td align=right tal:content="structure python:'<font size=-2>'+ligne.getId()+'</font>'" nowrap></td> - <span tal:define="url_items python:modules['string'].split(ligne.getResourceRelativeUrl(),'/')"> - <td align=center tal:content="python:url_items[len(url_items)-1]" nowrap >resource</td> - </span> - - <td align=center nowrap > - <span tal:condition="python:ligne.getDefaultResource()<>None and ligne.getColoris() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getColoris(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center nowrap > - <span tal:condition="python:ligne.getDefaultResource()<>None and ligne.getTaille() <> None"> - <span tal:define="url_items python:modules['string'].split(ligne.getTaille(),'/')" - tal:content="python:url_items[len(url_items)-1]"> - </span> - </span> - </td> - - <td align=center tal:content="python: '%.0f' % ligne.getQuantity()" nowrap >2</td> - - <td align=left> - <span tal:condition="python:ligne.getDefaultResource()<>None" - tal:define="modele python:ligne.getDefaultValue('resource',portal_type=['Modele'])"> - <span tal:content="structure python:'<font size=-2>'+modules['string'].lower(modele.getDescription())+'</font>'"> - </span> - </span> - </td> - - - </tr> - </span> - <tr> - <td colspan="3"></td> - <td align=center><b><i>Total</i></b></td> - <td align=center tal:content="python: '%.0f' %here.sample_delivery_count_samples()"><b><i>Total</i></b></td> - </tr> - </table> - <td><img src="spacer.png" width="1" height="100%"></td> - </tr> - <tr> <!-- Border Bottom Ligne commande --> - <td><img src="spacer.png" width="1" height="1"></td> - <td><img src="spacer.png" width="673" height="1"></td> - <td><img src="spacer.png" width="1" height="1"></td> - </tr> - -</table> - -</body> - -</html> diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_sql_modele_search.zsql b/product/Coramy/skins/coramy_trade/samples_packing_list_sql_modele_search.zsql deleted file mode 100755 index 0da2bf52d1331cc1a89ba741096425244fab505d..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_sql_modele_search.zsql +++ /dev/null @@ -1,17 +0,0 @@ -<dtml-comment> -title: -connection_id:erp5_sql_connection -max_rows:1000 -max_cache:100 -cache_time:0 -class_name:ZSQLBrain -class_file:zsqlbrain.py -</dtml-comment> -<params>modele_id</params> -SELECT DISTINCT livraison.id, livraison.uid, livraison.path, livraison.relative_url, livraison.delivery_state, livraison.Description, livraison.order_id -FROM catalog AS livraison, catalog AS ligne_livr, catalog AS modele, category -WHERE ligne_livr.parent_uid=livraison.uid -AND modele.id="<dtml-var modele_id>" -AND ligne_livr.uid=category.uid -AND modele.uid=category.category_uid -AND livraison.portal_type="Samples Packing List" \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_packing_list_view.form b/product/Coramy/skins/coramy_trade/samples_packing_list_view.form deleted file mode 100755 index ceb1350e9debddaa1501007f77bb027586745ffb..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_packing_list_view.form +++ /dev/null @@ -1,383 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Livraison échantillons</title> - <row_length>4</row_length> - <name>samples_packing_list_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_id</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">1</required> - <title>Livraison</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_destination_title</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>destination</base_category> - <catalog_index>Title</catalog_index> - <css_class></css_class> - <default></default> - <default_module>organisation</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Organisation', 'Organisation')]</portal_type> - <required type="int">0</required> - <title>Client</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>my_order_id</id> <type>RelationStringField</type> - <values> - <alternate_name></alternate_name> - <base_category>causality</base_category> - <catalog_index>id</catalog_index> - <css_class></css_class> - <default></default> - <default_module>commande_echantillons</default_module> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <jump_method>base_jump_relation</jump_method> - <max_length></max_length> - <portal_type type="list">[('Samples Order', 'Samples Order')]</portal_type> - <required type="int">0</required> - <title>Commande</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <update_method>base_update_relation</update_method> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - <field><id>delivery_state</id> <type>StringField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <max_length></max_length> - <required type="int">0</required> - <title>Etat</title> - <truncate type="int">0</truncate> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <default>python:here.portal_workflow.getInfoFor(here, 'delivery_state')</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_long">Too much input was given.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_target_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer à partir du</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_target_stop_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Livrer avant le</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - <field><id>my_start_date</id> <type>DateTimeField</type> - <values> - <allow_empty_time type="int">0</allow_empty_time> - <alternate_name></alternate_name> - <ampm_time_style type="int">0</ampm_time_style> - <css_class></css_class> - <date_only type="int">1</date_only> - <date_separator>/</date_separator> - <default_now type="int">0</default_now> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <hidden type="int">0</hidden> - <input_order>dmy</input_order> - <input_style>text</input_style> - <required type="int">0</required> - <time_separator>:</time_separator> - <title>Date d'expédition</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_datetime">You did not enter a valid date and time.</message> - <message name="datetime_out_of_range">The date and time you entered were out of range.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>center</title> - <fields> - - <field><id>my_commentaires</id> <type>TextAreaField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">3</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">0</required> - <title>Commentaires</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">80</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Mod\xe8le'), ('target_quantity', 'Quantit\xe9 demand\xe9e'), ('quantity', 'Quantit\xe9 livr\xe9e')]</all_columns> - <all_editable_columns type="list">[('quantity', 'Quantit\xe9 livr\xe9e')]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Ligne'), ('Description', 'Description'), ('getResourceRelativeUrl', 'Mod\xe8le'), ('target_quantity', 'Quantit\xe9 demand\xe9e'), ('quantity', 'Quantit\xe9 livr\xe9e')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[('quantity', 'Quantit\xe9 livr\xe9e')]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">100</lines> - <list_action>folder_contents</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Delivery Line', 'Delivery Line')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>order_line_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Lignes de livraison</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - <field><id>listbox_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">20</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <title>listbox_quantity</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>listbox_quantity_unit</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">0</required> - <size type="int">1</size> - <title>Unité</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/quantity_unit/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/samples_to_produce.py b/product/Coramy/skins/coramy_trade/samples_to_produce.py deleted file mode 100755 index 421abbd63d55fd585232060eb51e379a19f3a067..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/samples_to_produce.py +++ /dev/null @@ -1,45 +0,0 @@ -## Script (Python) "samples_to_produce" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters= -##title= -## -request = context.REQUEST -tab = '\t' -cr = '\r' -liste='Modele'+tab+'Qte livree'+tab+'Qte commandee'+cr -delivered_modele_list = context.samples_delivered() -ordered_modele_list = context.samples_ordered() -ordered_delivered_modele_list = context.samples_ordered_delivered() - -delivered_modele_dict ={} -for modele in delivered_modele_list : - delivered_modele_dict[modele.id] = modele.quantity - -ordered_modele_dict ={} -for modele in ordered_modele_list : - ordered_modele_dict[modele.id] = modele.quantity - -for modele in ordered_delivered_modele_list : - ordered_modele_dict[modele.id] = ordered_modele_dict[modele.id] - modele.quantity - -delivered_modele_keys = delivered_modele_dict.keys() -ordered_modele_keys = ordered_modele_dict.keys() -for modele_key in ordered_modele_keys: - if not(modele_key in delivered_modele_keys) : - delivered_modele_dict[modele_key] = 0 - -delivered_modele_keys = delivered_modele_dict.keys() -delivered_modele_keys.sort() -for modele_key in delivered_modele_keys: - if modele_key in ordered_modele_keys : - liste += 'modele/'+modele_key+tab+str(int(delivered_modele_dict[modele_key]))+tab+str(int(ordered_modele_dict[modele_key]))+cr - else : - liste += 'modele/'+modele_key+tab+str(int(delivered_modele_dict[modele_key]))+tab+'0'+cr - -request.RESPONSE.setHeader('Content-Type','application/text') - -return liste diff --git a/product/Coramy/skins/coramy_trade/speed_order_input.py b/product/Coramy/skins/coramy_trade/speed_order_input.py deleted file mode 100755 index f8a24f440ecc3c40ae9df478238d891f740fba14..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/speed_order_input.py +++ /dev/null @@ -1,70 +0,0 @@ -## Script (Python) "speed_order_input" -##bind container=container -##bind context=context -##bind namespace= -##bind script=script -##bind subpath=traverse_subpath -##parameters=form_id,dialog_id,modeles,quantity,tarif,cout_additionnel,coef_marge,coef_majoration -##title= -## -request=context.REQUEST -order = context.getObject() -error_modeles = [] - -for modele_item in modeles : - modele_list = order.modele_sql_search_id(modele_id = modele_item) - - # create a new line for each modle_item - new_id = str(order.generateNewId()) - context.portal_types.constructContent(type_name="Sample Order Line", - container=order, - id=new_id, - ) - categories = [] - categories.append('tarif/'+tarif) - - if len(modele_list) == 1 : - modele = modele_list[0].getObject() - - if modele <> None : - - # search for default_coloris and update if found - coloris_list = modele.contentValues(filter={'portal_type':'Variante Modele'}) - default_coloris = None - for coloris in coloris_list : - if coloris.getPrototype() == 1 : - default_coloris = coloris - if default_coloris <> None : - categories.append('coloris/'+default_coloris.getRelativeUrl()) - - - order[new_id].edit(quantity=quantity, cout_additionnel=cout_additionnel, - coef_marge=coef_marge, coef_majoration=coef_majoration, - resource_relative_url=modele.getRelativeUrl(), - categories=categories) - uids = [modele.getUid()] - order[new_id].setValueUids('resource', uids, portal_type='Modele') - - else : - order[new_id].edit(quantity=quantity, cout_additionnel=cout_additionnel, - coef_marge=coef_marge, coef_majoration=coef_majoration, - description = modele_item, categories=categories) - error_modeles.append(modele_item) - else : - order[new_id].edit(quantity=quantity, cout_additionnel=cout_additionnel, - coef_marge=coef_marge, coef_majoration=coef_majoration, - description = modele_item, categories=categories) - error_modeles.append(modele_item) - -if len(error_modeles)>0 : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s+lignes+créées.+%s+modeles+non+trouves.' - %(len(modeles),len(error_modeles)) - ) -else : - redirect_url = '%s/%s?%s' % ( context.absolute_url(), form_id - , 'portal_status_message=%s+lignes+créées.' - %len(modeles) - ) - -context.REQUEST[ 'RESPONSE' ].redirect( redirect_url ) diff --git a/product/Coramy/skins/coramy_trade/speed_order_input_form.form b/product/Coramy/skins/coramy_trade/speed_order_input_form.form deleted file mode 100755 index c0add731e0cdff4f5ab6ce1a0d241acb5fbe873b..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/speed_order_input_form.form +++ /dev/null @@ -1,190 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Saisie rapide</title> - <row_length>4</row_length> - <name>speed_order_input_form</name> - <pt>form_view_dialog</pt> - <action>speed_order_input</action> - <method>POST</method> - <enctype>multipart/form-data</enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_modeles</id> <type>LinesField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="list">[]</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <height type="int">10</height> - <hidden type="int">0</hidden> - <max_length></max_length> - <max_linelength></max_linelength> - <max_lines></max_lines> - <required type="int">1</required> - <title>Liste de modèles</title> - <unicode type="int">0</unicode> - <view_separator><br /> -</view_separator> - <whitespace_preserve type="int">0</whitespace_preserve> - <width type="int">40</width> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="too_many_lines">You entered too many lines.</message> - <message name="line_too_long">A line was too long.</message> - <message name="too_long">You entered too many characters.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - <field><id>my_quantity</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Quantité</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_tarif</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Tarif</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/tarif/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_cout_additionnel</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>0.0</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Coût sup. (euros)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_marge</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1.43</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Coef. de marge</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - <field><id>my_coef_majoration</id> <type>FloatField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default>1.0</default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <title>Coef. majoration</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_float">You did not enter a floating point number.</message> - </messages> - </field> - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/trade_condition_discount_view.form b/product/Coramy/skins/coramy_trade/trade_condition_discount_view.form deleted file mode 100755 index bc3dbc8c4d67e9f00624b5f1f31168e720084a15..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/trade_condition_discount_view.form +++ /dev/null @@ -1,86 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Remises</title> - <row_length>4</row_length> - <name>trade_condition_profile_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Remise'), ('description', 'Description'), ('getDiscountRation', 'Taux')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Remise'), ('description', 'Description'), ('getDiscountRation', 'Taux')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Remise', 'Remise')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>remise_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Remises</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/skins/coramy_trade/trade_condition_payment_view.form b/product/Coramy/skins/coramy_trade/trade_condition_payment_view.form deleted file mode 100755 index 32d72f5087eab3a4a22d3d775e3710d486471525..0000000000000000000000000000000000000000 --- a/product/Coramy/skins/coramy_trade/trade_condition_payment_view.form +++ /dev/null @@ -1,220 +0,0 @@ -<?xml version="1.0"?> - -<form> - <title>Paiement</title> - <row_length>4</row_length> - <name>trade_condition_profile_view</name> - <pt>form_view</pt> - <action>base_edit</action> - <method>POST</method> - <enctype></enctype> - <encoding>UTF-8</encoding> - <stored_encoding>ISO-8859-1</stored_encoding> - <unicode_mode>false</unicode_mode> - <groups> - <group> - <title>left</title> - <fields> - - <field><id>my_payment_mode</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Mode de paiement</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/payment_mode/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - <field><id>my_payment_term</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">1</required> - <start></start> - <title>Délai de paiement (jours)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_payment_end_of_month</id> <type>CheckBoxField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default type="int">0</default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <title>Paiement en fin de mois</title> - </values> - <tales> - <default>here/getPaymentEndOfMonth</default> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - <field><id>my_payment_additional_term</id> <type>IntegerField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <display_maxwidth></display_maxwidth> - <display_width type="int">10</display_width> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <end></end> - <external_validator></external_validator> - <extra></extra> - <hidden type="int">0</hidden> - <required type="int">0</required> - <start></start> - <title>Délai supplémentaire (jours)</title> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="not_integer">You did not enter an integer.</message> - <message name="integer_out_of_range">The integer you entered was out of range.</message> - </messages> - </field> - <field><id>my_trade_date</id> <type>ListField</type> - <values> - <alternate_name></alternate_name> - <css_class></css_class> - <default></default> - <description></description> - <editable type="int">1</editable> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <extra></extra> - <extra_item></extra_item> - <first_item type="int">0</first_item> - <hidden type="int">0</hidden> - <items type="list">[]</items> - <required type="int">1</required> - <size type="int">1</size> - <title>Date de référence</title> - <unicode type="int">0</unicode> - <whitespace_preserve type="int">0</whitespace_preserve> - </values> - <tales> - <items>here/portal_categories/trade_date/getFormItemList</items> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - <message name="required_not_found">Input is required but no input given.</message> - <message name="unknown_selection">You selected an item that was not in the list.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>right</title> - <fields> - - </fields> - </group> - <group> - <title>center</title> - <fields> - - </fields> - </group> - <group> - <title>bottom</title> - <fields> - - <field><id>listbox</id> <type>ListBox</type> - <values> - <all_columns type="list">[('id', 'Paiement'), ('description', 'Description')]</all_columns> - <all_editable_columns type="list">[]</all_editable_columns> - <alternate_name></alternate_name> - <columns type="list">[('id', 'Paiement'), ('description', 'Description')]</columns> - <css_class></css_class> - <default></default> - <default_params type="list">[('id', "''"), ('description', "''")]</default_params> - <description></description> - <domain_root_list type="list">[]</domain_root_list> - <domain_tree type="int">0</domain_tree> - <editable type="int">1</editable> - <editable_columns type="list">[]</editable_columns> - <enabled type="int">1</enabled> - <external_validator></external_validator> - <global_attributes type="list">[]</global_attributes> - <hidden type="int">0</hidden> - <lines type="int">10</lines> - <list_action>list</list_action> - <list_method type="method">searchFolder</list_method> - <meta_types type="list">[]</meta_types> - <portal_types type="list">[('Condition Paiement', 'Condition Paiement')]</portal_types> - <report_root_list type="list">[]</report_root_list> - <report_tree type="int">0</report_tree> - <search type="int">0</search> - <search_columns></search_columns> - <select type="int">0</select> - <selection_name>payment_condition_selection</selection_name> - <sort type="list">[('id', 'id')]</sort> - <sort_columns></sort_columns> - <stat_method></stat_method> - <title>Paiements supplémentaires</title> - </values> - <tales> - </tales> - <messages> - <message name="external_validator_failed">The input failed the external validator.</message> - </messages> - </field> - </fields> - </group> - <group> - <title>hidden</title> - <fields> - - </fields> - </group> - </groups> -</form> \ No newline at end of file diff --git a/product/Coramy/tests/.cvsignore b/product/Coramy/tests/.cvsignore deleted file mode 100755 index 5e3adbee3a6b0e3dc95d429df11b3b8298646f8c..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/.cvsignore +++ /dev/null @@ -1,3 +0,0 @@ -.AppleDouble -*.pyc -zLOG.log diff --git a/product/Coramy/tests/__init__.py b/product/Coramy/tests/__init__.py deleted file mode 100755 index 4817854199f1c3a8d9dab48b99b3dcff94216e8c..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/__init__.py +++ /dev/null @@ -1,5 +0,0 @@ -"""\ -Unit test package for CMFCategory - -To run all tests type 'python runalltests.py' -""" diff --git a/product/Coramy/tests/coramy_catalog.zexp b/product/Coramy/tests/coramy_catalog.zexp deleted file mode 100755 index d44cde09e9a63eaa4ba3297e502bf59c4b3a43e4..0000000000000000000000000000000000000000 Binary files a/product/Coramy/tests/coramy_catalog.zexp and /dev/null differ diff --git a/product/Coramy/tests/coramy_delivery.zexp b/product/Coramy/tests/coramy_delivery.zexp deleted file mode 100755 index 72a810ba571af836a2467f60c5cf163aed5726cd..0000000000000000000000000000000000000000 Binary files a/product/Coramy/tests/coramy_delivery.zexp and /dev/null differ diff --git a/product/Coramy/tests/coramy_order.zexp b/product/Coramy/tests/coramy_order.zexp deleted file mode 100755 index 986fe75b942c2614c5d0c8187a24822c43ae6ff9..0000000000000000000000000000000000000000 Binary files a/product/Coramy/tests/coramy_order.zexp and /dev/null differ diff --git a/product/Coramy/tests/framework.py b/product/Coramy/tests/framework.py deleted file mode 100755 index c36e5abb811a3731c59a710dfa3d877e323ae1f5..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/framework.py +++ /dev/null @@ -1,112 +0,0 @@ -############################################################################## -# -# ZopeTestCase -# -# COPY THIS FILE TO YOUR 'tests' DIRECTORY. -# -# This version of framework.py will use the SOFTWARE_HOME -# environment variable to locate Zope and the Testing package. -# -# If the tests are run in an INSTANCE_HOME installation of Zope, -# Products.__path__ and sys.path with be adjusted to include the -# instance's Products and lib/python directories respectively. -# -# If you explicitly set INSTANCE_HOME prior to running the tests, -# auto-detection is disabled and the specified path will be used -# instead. -# -# If the 'tests' directory contains a custom_zodb.py file, INSTANCE_HOME -# will be adjusted to use it. -# -# If you set the ZEO_INSTANCE_HOME environment variable a ZEO setup -# is assumed, and you can attach to a running ZEO server (via the -# instance's custom_zodb.py). -# -############################################################################## -# -# The following code should be at the top of every test module: -# -# import os, sys -# if __name__ == '__main__': -# execfile(os.path.join(sys.path[0], 'framework.py')) -# -# ...and the following at the bottom: -# -# if __name__ == '__main__': -# framework() -# -############################################################################## - -__version__ = '0.2.1' - -# Save start state -# -__SOFTWARE_HOME = os.environ.get('SOFTWARE_HOME', '') -__INSTANCE_HOME = os.environ.get('INSTANCE_HOME', '') - -if __SOFTWARE_HOME.endswith(os.sep): - __SOFTWARE_HOME = os.path.dirname(__SOFTWARE_HOME) - -if __INSTANCE_HOME.endswith(os.sep): - __INSTANCE_HOME = os.path.dirname(__INSTANCE_HOME) - -# Find and import the Testing package -# -if not sys.modules.has_key('Testing'): - p0 = sys.path[0] - if p0 and __name__ == '__main__': - os.chdir(p0) - p0 = '' - s = __SOFTWARE_HOME - p = d = s and s or os.getcwd() - while d: - if os.path.isdir(os.path.join(p, 'Testing')): - zope_home = os.path.dirname(os.path.dirname(p)) - # Do not add the parent directory into the path list. - # Why did the author put it? -yo - if 0: - sys.path[:1] = [p0, os.pardir, p, zope_home] - else: - sys.path[:1] = [p0, p, zope_home] - break - p, d = s and ('','') or os.path.split(p) - else: - print 'Unable to locate Testing package.', - print 'You might need to set SOFTWARE_HOME.' - sys.exit(1) - -import Testing, unittest -execfile(os.path.join(os.path.dirname(Testing.__file__), 'common.py')) - -# Include ZopeTestCase support -# -if 1: # Create a new scope - - p = os.path.join(os.path.dirname(Testing.__file__), 'ZopeTestCase') - - if not os.path.isdir(p): - print 'Unable to locate ZopeTestCase package.', - print 'You might need to install ZopeTestCase.' - sys.exit(1) - - ztc_common = 'ztc_common.py' - ztc_common_global = os.path.join(p, ztc_common) - - f = 0 - if os.path.exists(ztc_common_global): - execfile(ztc_common_global) - f = 1 - if os.path.exists(ztc_common): - execfile(ztc_common) - f = 1 - - if not f: - print 'Unable to locate %s.' % ztc_common - sys.exit(1) - - -# Debug -# -print 'SOFTWARE_HOME: %s' % os.environ.get('SOFTWARE_HOME', 'Not set') -print 'INSTANCE_HOME: %s' % os.environ.get('INSTANCE_HOME', 'Not set') - diff --git a/product/Coramy/tests/run_test_example.sh b/product/Coramy/tests/run_test_example.sh deleted file mode 100755 index deb684687fdfd67aa7b90f7d36343eb92311190e..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/run_test_example.sh +++ /dev/null @@ -1,10 +0,0 @@ -export INSTANCE_HOME=/home/$USER/zope -export SOFTWARE_HOME=/usr/lib/zope/lib/python/ -export COPY_OF_INSTANCE_HOME=$INSTANCE_HOME -export COPY_OF_SOFTWARE_HOME=$SOFTWARE_HOME - -dir="`dirname $0`" -if test -n "$dir"; then - cd $dir -fi -python runalltests.py diff --git a/product/Coramy/tests/runalltests.py b/product/Coramy/tests/runalltests.py deleted file mode 100755 index 3a0d03daaf59bb81b0578378df7340a134f7ae88..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/runalltests.py +++ /dev/null @@ -1,29 +0,0 @@ -# -# Runs all tests in the current directory -# -# Execute like: -# python runalltests.py -# -# Alternatively use the testrunner: -# python /path/to/Zope/utilities/testrunner.py -qa -# - -import os, sys -if __name__ == '__main__': - execfile(os.path.join(sys.path[0], 'framework.py')) - -import unittest -TestRunner = unittest.TextTestRunner -suite = unittest.TestSuite() - -tests = os.listdir(os.curdir) -tests = [n[:-3] for n in tests if n.startswith('test') and n.endswith('.py')] - -for test in tests: - m = __import__(test) - if hasattr(m, 'test_suite'): - suite.addTest(m.test_suite()) - -if __name__ == '__main__': - TestRunner().run(suite) - diff --git a/product/Coramy/tests/testCoramyCMFActivity.py b/product/Coramy/tests/testCoramyCMFActivity.py deleted file mode 100755 index e22d1b2366c988005d2a9ac23f92e40889dab3bb..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/testCoramyCMFActivity.py +++ /dev/null @@ -1,353 +0,0 @@ -############################################################################## -# -# Copyright (c) 2004 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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. -# -############################################################################## - - - -# -# Skeleton ZopeTestCase -# - -from random import randint - -import os, sys -if __name__ == '__main__': - execfile(os.path.join(sys.path[0], 'framework.py')) - -# Needed in order to have a log file inside the current folder -os.environ['EVENT_LOG_FILE'] = os.path.join(os.getcwd(), 'zLOG.log') -os.environ['EVENT_LOG_SEVERITY'] = '-300' - -from Testing import ZopeTestCase -from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase -from AccessControl.SecurityManagement import newSecurityManager, noSecurityManager -from DateTime import DateTime -from Acquisition import aq_base, aq_inner -from zLOG import LOG -import time - -class TestCMFActivity(ERP5TypeTestCase): - - run_all_test = 1 - # Different variables used for this test - company_id = 'Nexedi' - title1 = 'title1' - title2 = 'title2' - destination_company_stock = 'site/Stock_MP/Gravelines' - destination_company_group = 'group/Coramy' - destination_company_id = 'Coramy' - component_id = 'brick' - sales_order_id = '1' - purchase_order_id = '1' - quantity = 10 - base_price = 0.7832 - - def getBusinessTemplateList(self): - """ - Return the list of business templates. - - the business template crm give the following things : - modules: - - person - - organisation - base categories: - - region - - subordination - - /organisation - """ - return ('erp5_crm',) - - def getCategoriesTool(self): - return getattr(self.getPortal(), 'portal_categories', None) - - def getRuleTool(self): - return getattr(self.getPortal(), 'portal_Rules', None) - - def getPersonModule(self): - return getattr(self.getPortal(), 'person', None) - - def getOrganisationModule(self): - return getattr(self.getPortal(), 'organisation', None) - - #def populate(self, quiet=1, run=1): - def afterSetUp(self, quiet=1, run=1): - self.login() - portal = self.getPortal() - # Then add new components - if not(hasattr(portal,'organisation')): - portal.portal_types.constructContent(type_name='Organisation Module', - container=portal, - id='organisation') - organisation_module = self.getOrganisationModule() - if not(organisation_module.hasContent(self.company_id)): - o1 = organisation_module.newContent(id=self.company_id) - - def login(self, quiet=0, run=run_all_test): - uf = self.getPortal().acl_users - uf._doAddUser('seb', '', ['Manager'], []) - user = uf.getUserById('seb').__of__(uf) - newSecurityManager(None, user) - - def test_01_DeferedSetTitleSQLDict(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Defered Set Title SQLDict ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='SQLDict').setTitle(self.title2) - organisation.reindexObject() - # Needed so that the message are commited into the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - portal.portal_activities.distribute() - portal.portal_activities.tic() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_02_DeferedSetTitleSQLQueue(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Defered Set Title SQLQueue ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='SQLQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - portal.portal_activities.distribute() - portal.portal_activities.tic() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_03_DeferedSetTitleRAMDict(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Defered Set Title RAMDict ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='RAMDict').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - portal.portal_activities.distribute() - portal.portal_activities.tic() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_04_DeferedSetTitleRAMQueue(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Defered Set Title RAMQueue ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='RAMQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - portal.portal_activities.distribute() - portal.portal_activities.tic() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_05_InvokeAndCancelSQLDict(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Invoke And Cancel SQLDict ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='SQLDict').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageCancel(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - organisation.activate(activity='SQLDict').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageInvoke(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_06_InvokeAndCancelSQLQueue(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Invoke And Cancel SQLQueue ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='SQLQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageCancel(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - organisation.activate(activity='SQLQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageInvoke(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_07_InvokeAndCancelRAMQueue(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Invoke And Cancel RAMQueue ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='RAMQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageCancel(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - organisation.activate(activity='RAMQueue').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageInvoke(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - def test_08_InvokeAndCancelRAMDict(self, quiet=0, run=run_all_test): - # Test if we can add a complete sales order - if not run: return - if not quiet: - message = '\nTest Invoke And Cancel RAMDict ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - organisation = portal.organisation._getOb(self.company_id) - organisation.setTitle(self.title1) - self.assertEquals(self.title1,organisation.getTitle()) - organisation.activate(activity='RAMDict').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageCancel(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title1,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - organisation.activate(activity='RAMDict').setTitle(self.title2) - # Needed so that the message are commited into the queue - get_transaction().commit() - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),1) - portal.portal_activities.manageInvoke(organisation.getPhysicalPath(),'setTitle') - # Needed so that the message are removed from the queue - get_transaction().commit() - self.assertEquals(self.title2,organisation.getTitle()) - message_list = portal.portal_activities.getMessageList() - self.assertEquals(len(message_list),0) - - - - - - - - - -if __name__ == '__main__': - framework() -else: - import unittest - def test_suite(): - suite = unittest.TestSuite() - suite.addTest(unittest.makeSuite(TestCMFActivity)) - return suite - diff --git a/product/Coramy/tests/testCoramyFusion.py b/product/Coramy/tests/testCoramyFusion.py deleted file mode 100755 index 227ef36e473f0b32817b938e71066e5fbf714c25..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/testCoramyFusion.py +++ /dev/null @@ -1,586 +0,0 @@ -############################################################################## -# -# Copyright (c) 2004 Nexedi SARL and Contributors. All Rights Reserved. -# Yoshinori Okuji <yo@nexedi.com> -# -# 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. -# -############################################################################## - - - -# -# Skeleton ZopeTestCase -# - -from random import randint - -import os, sys -if __name__ == '__main__': - execfile(os.path.join(sys.path[0], 'framework.py')) - -# Needed in order to have a log file inside the current folder -os.environ['EVENT_LOG_FILE'] = os.path.join(os.getcwd(), 'zLOG.log') -os.environ['EVENT_LOG_SEVERITY'] = '-300' - -from Testing import ZopeTestCase -from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase -from AccessControl.SecurityManagement import newSecurityManager, noSecurityManager -from DateTime import DateTime -from Acquisition import aq_base, aq_inner -from zLOG import LOG -import time - -class TestFusion(ERP5TypeTestCase): - """ - Test the fusion code 'mergeDeliveryList' in Simulation Tool. - Need to test these types: - - - commande_vente (Sales Order) - - livraison_vente (Sales Packing List) - - facture_vente (Sale Invoice Transaction) - - commande_achat (Purchase Order) - - livraison_achat (Purchase Packing List) - - ordre_fabrication (Production Order) - - livraison_fabrication (Production Packing List) - - rapport_fabrication (Production Report) - """ - run_all_test = 1 - # Various variables used for this test - customer_organisation_id = 'nexedi' - customer_person_id = 'yo' - vendor_organisation_id = 'coramy' - vendor_person_id = 'tb' - vendor_section = 'group/Coramy' - - def getBusinessTemplateList(self): - """ - Return the list of business templates. - - the business template crm give the following things : - modules: - - person - - organisation - base categories: - - region - - subordination - - /organisation - """ - return ('erp5_crm', 'coramy_catalog', 'coramy_delivery', ) - #return ('erp5_crm', 'coramy_delivery', ) - - def getCatalogTool(self): - return getattr(self.getPortal(), 'portal_catalog', None) - - def getSimulationTool(self): - return getattr(self.getPortal(), 'portal_simulation', None) - - def getPersonModule(self): - return getattr(self.getPortal(), 'person', None) - - def getOrganisationModule(self): - return getattr(self.getPortal(), 'organisation', None) - - def getSalesOrderModule(self): - return getattr(self.getPortal(), 'commande_vente', None) - - def getSalesPackingListModule(self): - return getattr(self.getPortal(), 'livraison_vente', None) - - def getSaleInvoiceTransactionModule(self): - return getattr(self.getPortal(), 'facture_vente', None) - - def getPurchaseOrderModule(self): - return getattr(self.getPortal(), 'commande_achat', None) - - def getPurchasePackingListModule(self): - return getattr(self.getPortal(), 'livraison_achat', None) - - def getProductionOrderModule(self): - return getattr(self.getPortal(), 'ordre_fabrication', None) - - def getProductionPackingListModule(self): - return getattr(self.getPortal(), 'livraison_fabrication', None) - - def getProductionReportModule(self): - return getattr(self.getPortal(), 'rapport_fabrication', None) - - def getComposantModule(self): - return getattr(self.getPortal(), 'composant', None) - - def getAssortimentModule(self): - return getattr(self.getPortal(), 'assortiment', None) - - def afterSetUp(self, quiet=1, run=1): - self.login() - portal = self.getPortal() - portal_catalog = self.getCatalogTool() - portal_catalog.manage_catalogClear() - portal.ERP5_setAcquisition() - portal.portal_categories.immediateReindexObject() - for o in portal.portal_categories.objectValues(): - o.recursiveImmediateReindexObject() - portal.portal_simulation.immediateReindexObject() - for o in portal.portal_simulation.objectValues(): - o.recursiveImmediateReindexObject() - portal.portal_rules.immediateReindexObject() - # Create organisations. - portal.portal_types.constructContent(type_name='Organisation Module', - container=portal, - id='organisation') - organisation_module = portal.organisation - self.customer_organisation = organisation_module.newContent(id=self.customer_organisation_id) - self.vendor_organisation = organisation_module.newContent(id=self.vendor_organisation_id) - # Create persons. - portal.portal_types.constructContent(type_name='Person Module', - container=portal, - id='person') - person_module = portal.person - self.customer_person = person_module.newContent(id=self.customer_person_id) - self.vendor_person = person_module.newContent(id=self.vendor_person_id) - # Create models. - modele_module = portal.modele - self.model1 = modele_module.newContent(id='060E404') - self.model1.newContent(id='B', portal_type='Variante Morphologique') - self.model1.newContent(id='C', portal_type='Variante Morphologique') - self.model1.newContent(id='Violet_rose', portal_type='Variante Modele') - self.model1.newContent(id='noir_gris', portal_type='Variante Modele') - self.model2 = modele_module.newContent(id='004C401') - - def login(self, quiet=0, run=run_all_test): - uf = self.getPortal().acl_users - uf._doAddUser('seb', '', ['Manager'], []) - user = uf.getUserById('seb').__of__(uf) - newSecurityManager(None, user) - - def test_01_SanityCheck(self, quiet=0, run=run_all_test): - # Test if the environment is not broken - if not run: return - if not quiet: - message = '\nTest Sanity Check ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal = self.getPortal() - self.assertNotEqual(self.getOrganisationModule(), None) - organisation_module = portal.organisation - self.assertNotEqual(organisation_module._getOb(self.customer_organisation_id), None) - self.assertNotEqual(organisation_module._getOb(self.vendor_organisation_id), None) - self.assertNotEqual(self.getPersonModule(), None) - person_module = portal.person - self.assertNotEqual(person_module._getOb(self.customer_person_id), None) - self.assertNotEqual(person_module._getOb(self.vendor_person_id), None) - self.assertNotEqual(self.getSimulationTool(), None) - self.assertNotEqual(self.getSalesOrderModule(), None) - self.assertNotEqual(self.getSalesPackingListModule(), None) - - def test_02_InvalidDeliveriesPassed(self, quiet=0, run=run_all_test): - # Test if mergeDeliveryList raises an exception when no delivery or a single one is passed - # and when deliveries have different organisations/persons/discounts/payment conditions. - if not run: return - if not quiet: - message = '\nInvalid Deliveries Passed ' - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal_simulation = self.getSimulationTool() - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - []) - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - [None]) # None is okay here, since it is never used. - module = self.getSalesOrderModule() - # Test source sections. - if module.hasContent('1'): module.deleteContent('1') - if module.hasContent('2'): module.deleteContent('2') - d1 = module.newContent(id='1', portal_type='Sales Order', - source_section=self.vendor_organisation.getRelativeUrl()) - self.assertEqual(d1.getSourceSection(), self.vendor_organisation.getRelativeUrl()) - d2 = module.newContent(id='2', portal_type='Sales Order', - source_section=self.customer_organisation.getRelativeUrl()) - self.assertEqual(d2.getSourceSection(), self.customer_organisation.getRelativeUrl()) - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - [d1, d2]) - d2.setSourceSection(self.vendor_organisation.getRelativeUrl()) - self.assertEqual(d2.getSourceSection(), self.vendor_organisation.getRelativeUrl()) - # Test source decisions. - d1.setSourceDecision(self.vendor_person.getRelativeUrl()) - d2.setSourceDecision(self.customer_person.getRelativeUrl()) - self.assertEqual(d1.getSourceDecision(), self.vendor_person.getRelativeUrl()) - self.assertEqual(d2.getSourceDecision(), self.customer_person.getRelativeUrl()) - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - [d1, d2]) - d2.setSourceDecision(self.vendor_person.getRelativeUrl()) - self.assertEqual(d2.getSourceDecision(), self.vendor_person.getRelativeUrl()) - # Test discounts. - r1 = d1.newContent(id='ESCOMPTE', portal_type='Remise', immediate_discount=1) - r2 = d2.newContent(id='ESCOMPTE', portal_type='Remise', immediate_discount=0) - self.assertEqual(r1.getImmediateDiscount(), 1) - self.assertEqual(r2.getImmediateDiscount(), 0) - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - [d1, d2]) - r2.setImmediateDiscount(1) - self.assertEqual(r2.getImmediateDiscount(), 1) - # Test payment conditions. - c1 = d1.newContent(id='RFA', portal_type='Condition Paiement', payment_term=90) - c2 = d2.newContent(id='RFA', portal_type='Condition Paiement', payment_term=180) - self.assertEqual(c1.getPaymentTerm(), 90) - self.assertEqual(c2.getPaymentTerm(), 180) - self.assertRaises(portal_simulation.MergeDeliveryListError, - portal_simulation.mergeDeliveryList, - [d1, d2]) - c2.setPaymentTerm(90) - self.assertEqual(c2.getPaymentTerm(), 90) - # Now fusion must succeed. - portal_simulation.mergeDeliveryList([d1, d2]) - - def setCell(self, line, category_list, **kw): - category_list = list(category_list) - category_list.sort() - #LOG('setCell', 0, 'line = %s, line.contentValues() = %s, line.objectIds() = %s' % (repr(line), repr(line.contentValues()), repr(list(line.objectIds())))) - for cell in line.contentValues(): - predicate_value_list = cell.getPredicateValueList() - predicate_value_list.sort() - if predicate_value_list == category_list: - cell.edit(**kw) - return cell - - def makeDeliveries(self, module, delivery_type, delivery_line_type): - for id in ('1', '2', '3'): - if module.hasContent(id): - module.deleteContent(id) - d1 = module.newContent(id='1', portal_type=delivery_type) - self.assertEqual(d1.getPortalType(), delivery_type) - d1_line1 = d1.newContent(id='1', portal_type=delivery_line_type, - resource='modele/004C401', - price=2.0, - quantity=1.0, - target_quantity=1.0) - self.assertEqual(d1_line1.getPortalType(), delivery_line_type) - d1_line2 = d1.newContent(id='2', portal_type=delivery_line_type, - resource='modele/060E404', - variation_base_category_list = ['morphologie', 'taille', 'coloris'], - variation_category_list = ['morphologie/modele/060E404/C', 'morphologie/modele/060E404/B', 'taille/adulte/38', 'taille/adulte/40', 'taille/adulte/42', 'coloris/modele/060E404/Violet_rose', 'coloris/modele/060E404/noir_gris']) - self.assertEqual(d1_line2.getPortalType(), delivery_line_type) - cell = self.setCell(d1_line2, - ('coloris/modele/060E404/Violet_rose', 'morphologie/modele/060E404/C', 'taille/adulte/38'), - price = 5.0, - quantity = 1.0, - target_quantity = 1.0) - self.assertNotEqual(cell, None) - #self.assertNotEqual(cell.getPortalType(), 'Delivery Cell') - cell = self.setCell(d1_line2, - ('coloris/modele/060E404/noir_gris', 'morphologie/modele/060E404/C', 'taille/adulte/40'), - price = 5.0, - quantity = 2.0, - target_quantity = 2.0) - self.assertNotEqual(cell, None) - d1_line2.recursiveImmediateReindexObject() - self.assertAlmostEqual(d1_line2.getTotalPrice(), 5.0 * (1.0 + 2.0)) - self.assertAlmostEqual(d1_line2.getTotalQuantity(), 1.0 + 2.0) - d1_line3 = d1.newContent(id='3', portal_type=delivery_line_type, - resource='modele/060E404', - price=0.0, - variation_base_category_list = ['taille', 'coloris'], - variation_category_list = ['coloris/modele/060E404/Violet_rose', 'taille/adulte/38', 'taille/adulte/40', 'taille/adulte/42', 'coloris/modele/060E404/noir_gris']) - cell = self.setCell(d1_line3, - ('coloris/modele/060E404/Violet_rose', 'taille/adulte/40'), - price = 3.0, - quantity = 3.0, - target_quantity = 3.0) - self.assertNotEqual(cell, None) - cell = self.setCell(d1_line3, - ('coloris/modele/060E404/noir_gris', 'taille/adulte/42'), - price = 4.0, - quantity = 5.0, - target_quantity = 5.0) - self.assertNotEqual(cell, None) - d1.recursiveImmediateReindexObject() - #LOG('testFusion _makeDeliveries', 0, 'cell = %s, cell.getVariationCategoryList() = %s, cell.showDict() = %s' % (repr(cell), str(cell.getVariationCategoryList()), repr(cell.showDict()))) - - d2 = module.newContent(id='2', portal_type=delivery_type) - d2_line1 = d2.newContent(id='1', portal_type=delivery_line_type, - resource='modele/004C401', - price=7.0, - quantity=2.0, - target_quantity=2.0) - d2_line2 = d2.newContent(id='2', portal_type=delivery_line_type, - resource='modele/060E404', - variation_base_category_list = ['morphologie', 'taille', 'coloris'], - variation_category_list = ['morphologie/modele/060E404/C', 'morphologie/modele/060E404/B', 'taille/adulte/36', 'taille/adulte/38', 'taille/adulte/40', 'coloris/modele/060E404/Violet_rose', 'coloris/modele/060E404/noir_gris']) - cell = self.setCell(d2_line2, - ('coloris/modele/060E404/Violet_rose', 'morphologie/modele/060E404/C', 'taille/adulte/36'), - price = 5.0, - quantity = 1.0, - target_quantity = 1.0) - self.assertNotEqual(cell, None) - cell = self.setCell(d2_line2, - ('coloris/modele/060E404/noir_gris', 'morphologie/modele/060E404/C', 'taille/adulte/40'), - price = 5.0, - quantity = 2.0, - target_quantity = 2.0) - self.assertNotEqual(cell, None) - d2_line2.recursiveImmediateReindexObject() - self.assertAlmostEqual(d2_line2.getTotalPrice(), 5.0 * (1.0 + 2.0)) - self.assertAlmostEqual(d2_line2.getTotalQuantity(), 1.0 + 2.0) - d2.recursiveImmediateReindexObject() - - d3 = module.newContent(id='3', portal_type=delivery_type) - d3_line1 = d3.newContent(id='1', portal_type=delivery_line_type, - resource='modele/060E404', - variation_base_category_list = ['morphologie', 'taille', 'coloris'], - variation_category_list = ['morphologie/modele/060E404/C', 'morphologie/modele/060E404/B', 'taille/adulte/44', 'coloris/modele/060E404/Violet_rose', 'coloris/modele/060E404/noir_gris']) - cell = self.setCell(d3_line1, - ('coloris/modele/060E404/Violet_rose', 'morphologie/modele/060E404/C', 'taille/adulte/44'), - price = 3.0, - quantity = 3.0, - target_quantity = 3.0) - self.assertNotEqual(cell, None) - d3.recursiveImmediateReindexObject() - - def _checkDeliveries(self, d1, d2, d3): - self.assertEqual(len(d1.objectIds()), 3) - self.assertEqual(d2.getSimulationState(), 'cancelled') - self.assertEqual(d3.getSimulationState(), 'cancelled') - line1 = line2 = line3 = None - for line in d1.contentValues(): - if line.getResource() == 'modele/004C401': - line1 = line - elif line.getResource() == 'modele/060E404': - if 'morphologie' in line.getVariationBaseCategoryList(): - line2 = line - else: - line3 = line - #LOG('_checkDeliveries', 0, 'line1 = %s, line1.objectIds() = %s' % (repr(line1), repr(list(line1.objectIds())))) - #LOG('_checkDeliveries', 0, 'line2 = %s, line2.objectIds() = %s' % (repr(line2), repr(list(line2.objectIds())))) - #LOG('_checkDeliveries', 0, 'line3 = %s, line3.objectIds() = %s' % (repr(line3), repr(list(line3.objectIds())))) - self.assertNotEqual(line1, None) - self.assertAlmostEqual(line1.getTotalQuantity(), 1.0 + 2.0) - self.assertAlmostEqual(line1.getTotalPrice(), 2.0 * 1.0 + 7.0 * 2.0) - self.assertAlmostEqual(line1.getPrice(), line1.getTotalPrice() / line1.getTotalQuantity()) - self.assertNotEqual(line2, None) - self.assertAlmostEqual(line2.getTotalQuantity(), 1.0 + 2.0 + 1.0 + 2.0 + 3.0) - self.assertAlmostEqual(line2.getTotalPrice(), 5.0 * 1.0 + 5.0 * 2.0 + 5.0 * 1.0 + 5.0 * 2.0 + 3.0 * 3.0) - category_list = list(line2.getVariationCategoryList()) - category_list.sort() - self.assertEqual(category_list, ['coloris/modele/060E404/Violet_rose', 'coloris/modele/060E404/noir_gris', 'morphologie/modele/060E404/B', 'morphologie/modele/060E404/C', 'taille/adulte/36', 'taille/adulte/38', 'taille/adulte/40', 'taille/adulte/42', 'taille/adulte/44']) - #self.assertAlmostEqual(line2.getPrice(), line2.getTotalPrice() / line2.getTotalQuantity()) - self.assertNotEqual(line3, None) - self.assertAlmostEqual(line3.getTotalQuantity(), 3.0 + 5.0) - self.assertAlmostEqual(line3.getTotalPrice(), 3.0 * 3.0 + 4.0 * 5.0) - category_list = list(line3.getVariationCategoryList()) - category_list.sort() - self.assertEqual(category_list, ['coloris/modele/060E404/Violet_rose', 'coloris/modele/060E404/noir_gris', 'taille/adulte/38', 'taille/adulte/40', 'taille/adulte/42']) - #self.assertAlmostEqual(line3.getPrice(), line3.getTotalPrice() / line3.getTotalQuantity()) - - def _testDeliveries(self, module, delivery_type, delivery_line_type, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Deliveries. This is shared among various deliveries. - if not run: return - if not quiet: - message = '\n%s ' % delivery_type - ZopeTestCase._print(message) - LOG('Testing... ',0,message) - portal_simulation = self.getSimulationTool() - - self.makeDeliveries(module, delivery_type, delivery_line_type) - pl = portal_simulation.mergeDeliveryList([module['1'], module['2'], module['3']]) - pl.recursiveImmediateReindexObject() - self._checkDeliveries(module['1'], module['2'], module['3']) - - self.makeDeliveries(module, delivery_type, delivery_line_type) - pl = portal_simulation.mergeDeliveryList([module['2'], module['3'], module['1']]) - pl.recursiveImmediateReindexObject() - self._checkDeliveries(module['2'], module['3'], module['1']) - - self.makeDeliveries(module, delivery_type, delivery_line_type) - pl = portal_simulation.mergeDeliveryList([module['3'], module['1'], module['2']]) - pl.recursiveImmediateReindexObject() - self._checkDeliveries(module['3'], module['1'], module['2']) - - def test_03_SalesOrders(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Sales Orders - module = self.getSalesOrderModule() - self._testDeliveries(module, 'Sales Order', 'Sales Order Line', quiet=quiet, run=run) - - def test_04_SalesPackingLists(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Sales Packing Lists - module = self.getSalesPackingListModule() - self._testDeliveries(module, 'Sales Packing List', 'Sales Packing List Line', quiet=quiet, run=run) - - def test_06_PurchaseOrders(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Purchase Orders - module = self.getPurchaseOrderModule() - self._testDeliveries(module, 'Purchase Order', 'Purchase Order Line', quiet=quiet, run=run) - - def test_07_PurchasePackingLists(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Purchase Packing Lists - module = self.getPurchasePackingListModule() - self._testDeliveries(module, 'Purchase Packing List', 'Purchase Packing List Line', quiet=quiet, run=run) - - def test_08_ProductionOrders(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Production Orders - module = self.getProductionOrderModule() - self._testDeliveries(module, 'Production Order', 'Production Order Line', quiet=quiet, run=run) - - def test_09_ProductionPackingLists(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Production Packing Lists - module = self.getProductionPackingListModule() - self._testDeliveries(module, 'Production Packing List', 'Production Packing List Line', quiet=quiet, run=run) - - def test_10_ProductionReports(self, quiet=0, run=run_all_test): - # Test mergeDeliveryList with Production Reports - module = self.getProductionReportModule() - self._testDeliveries(module, 'Production Report', 'Production Report Component', quiet=quiet, run=run) - - def test_11_Containers(self, quiet=0, run=run_all_test): - # Test Containers with Sales Packing Lists. - module = self.getComposantModule() - self.assertNotEqual(module, None) - composant = module.newContent(id='CAame', portal_type='Composant', - type_composant = 'Carton') - variante = composant.newContent(id='A', portal_type='Variante Composant', - source_base_price = 0.6, - default_source_reference = 'A', - base_height = 400.0, - base_length = 600.0, - base_width = 300.0, - base_price = None, - base_weight = None) - composant.recursiveImmediateReindexObject() - module = self.getSalesPackingListModule() - for id in ('1', '2'): - if module.hasContent(id): - module.deleteContent(id) - d = module.newContent(id=id, portal_type='Sales Packing List') - c = d.newContent(id='c1', portal_type='Container', - resource='composant/CAame', - serial_number = '0000640009', - gross_weight = 0.0, - price = 0.0, - variation_base_category_list = ['variante'], - variation_category_list = ['variante/composant/CAame/A']) - l = c.newContent(id='1', portal_type='Container Line', - resource = 'modele/060E404', - price = 0.0, - variation_base_category_list = ['coloris', 'taille'], - variation_category_list = ['taille/adulte/42', 'coloris/modele/060E404/Violet_rose']) - cell = self.setCell(l, - ('taille/adulte/42', 'coloris/modele/060E404/Violet_rose'), - target_quantity = 53.0) - self.assertNotEqual(cell, None) - self.assertAlmostEqual(cell.getTargetQuantity(), 53.0) - d.recursiveImmediateReindexObject() - #LOG('test_11_Containers', 0, 'id = %s, d = %s, d.contentValues() = %s, d.objectIds() = %s, c = %s, c.contentValues() = %s, c.objectIds() = %s' % (repr(id), repr(d), repr(d.contentValues()), repr(d.objectIds()), repr(c), repr(c.contentValues()), repr(c.objectIds()))) - self.assertAlmostEqual(c.getTargetTotalQuantity(), 53.0) - portal_simulation = self.getSimulationTool() - d = portal_simulation.mergeDeliveryList([module['1'], module['2']]) - d.recursiveImmediateReindexObject() - self.assertEqual(len(d.objectIds()), 2) - self.assertEqual(d.getTargetTotalQuantity(), None) - for c in d.contentValues(): - self.assertAlmostEqual(c.getTargetTotalQuantity(), 53.0) - - def test_12_SaleInvoiceTransactions(self, quiet=0, run=run_all_test): - # Test Sale Invoice Transacations. - module = self.getAssortimentModule() - assortiment = module.newContent(id='712C405UNI_12P', portal_type='Assortiment') - assortiment = module.newContent(id='GALEC_067C403GLC(38-48)_12p', portal_type='Assortiment') - assortiment.newContent(id='aura') - assortiment.newContent(id='curaco') - module = self.getSaleInvoiceTransactionModule() - for id in ('1', '2'): - if module.hasContent(id): - module.deleteContent(id) - i1 = module.newContent(id='1', portal_type='Sale Invoice Transaction') - l = i1.newContent(id='1', portal_type='Invoice Line', - resource = 'assortiment/712C405UNI_12P', - quantity_unit = 'Unite', - price = 52.8, - quantity = 2.0, - variation_base_category_list = (), - variation_category_list = ()) - self.assertAlmostEqual(l.getPrice(), 52.8) - self.assertAlmostEqual(l.getQuantity(), 2.0) - l = i1.newContent(id='2', portal_type='Invoice Line', - resource = 'assortiment/GALEC_067C403GLC(38-48)_12p', - quantity_unit = 'Unite', - price = 0.0, - variation_base_category_list = ('coloris',), - variation_category_list = ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/aura', 'coloris/assortiment/GALEC_067C403GLC(38-48)_12p/curaco')) - cell = self.setCell(l, - ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/aura',), - price = 67.0, - quantity = 1.0) - self.assertNotEqual(cell, None) - self.assertAlmostEqual(cell.getPrice(), 67.0) - self.assertAlmostEqual(cell.getQuantity(), 1.0) - cell = self.setCell(l, - ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/curaco',), - price = 67.0, - quantity = 1.0) - self.assertNotEqual(cell, None) - i1.recursiveImmediateReindexObject() - i2 = module.newContent(id='2', portal_type='Sale Invoice Transaction') - i2.newContent(id='1', portal_type='Invoice Line', - resource = 'assortiment/712C405UNI_12P', - quantity_unit = 'Unite', - price = 32.8, - quantity = 2.0, - variation_base_category_list = (), - variation_category_list = ()) - l = i2.newContent(id='2', portal_type='Invoice Line', - resource = 'assortiment/GALEC_067C403GLC(38-48)_12p', - quantity_unit = 'Unite', - price = 0.0, - variation_base_category_list = ('coloris',), - variation_category_list = ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/aura', 'coloris/assortiment/GALEC_067C403GLC(38-48)_12p/curaco')) - cell = self.setCell(l, - ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/aura',), - price = 67.0, - quantity = 2.0) - self.assertNotEqual(cell, None) - cell = self.setCell(l, - ('coloris/assortiment/GALEC_067C403GLC(38-48)_12p/curaco',), - price = 67.0, - quantity = 3.0) - self.assertNotEqual(cell, None) - i2.recursiveImmediateReindexObject() - portal_simulation = self.getSimulationTool() - d = portal_simulation.mergeDeliveryList([i1, i2]) - d.recursiveImmediateReindexObject() - #LOG('test_12_SaleInvoiceTransactions', 0, 'd.getUid() = %s' % repr(d.getUid())) - self.assertEqual(len(d.objectIds()), 3) - self.assertAlmostEqual(d.getTotalPrice(), 52.8 * 2.0 + 32.8 * 2.0 + 67.0 * (1.0 + 1.0 + 2.0 + 3.0)) - - -if __name__ == '__main__': - framework() -else: - import unittest - def test_suite(): - suite = unittest.TestSuite() - suite.addTest(unittest.makeSuite(TestFusion)) - return suite - diff --git a/product/Coramy/tests/testCoramyOrder.py b/product/Coramy/tests/testCoramyOrder.py deleted file mode 100755 index b024741a2604416c15fd4b21fda086075ab87f2d..0000000000000000000000000000000000000000 --- a/product/Coramy/tests/testCoramyOrder.py +++ /dev/null @@ -1,1261 +0,0 @@ -############################################################################## -# -# Copyright (c) 2004 Nexedi SARL and Contributors. All Rights Reserved. -# Sebastien Robin <seb@nexedi.com> -# -# 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. -# -############################################################################## - - - -# -# Skeleton ZopeTestCase -# - -from random import randint - -import os, sys -if __name__ == '__main__': - execfile(os.path.join(sys.path[0], 'framework.py')) - -# Needed in order to have a log file inside the current folder -os.environ['EVENT_LOG_FILE'] = os.path.join(os.getcwd(), 'zLOG.log') -os.environ['EVENT_LOG_SEVERITY'] = '-300' - -from Testing import ZopeTestCase -from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase -from AccessControl.SecurityManagement import newSecurityManager, noSecurityManager -from DateTime import DateTime -from Acquisition import aq_base, aq_inner -from Globals import PersistentMapping -from zLOG import LOG -from Products.ERP5Type.tests.Sequence import Sequence, SequenceList -import time - - -class TestOrder(ERP5TypeTestCase): - - # Different variables used for this test - run_all_test = 1 - source_company_id = 'Nexedi' - sale_manager_id = 'seb' - destination_company_stock = 'site/Stock_MP/Gravelines' - production_destination_site = 'site/Stock_PF/Gravelines' - production_destination_site2 = 'site/Stock_PF/Bonningues' - production_source_site = 'site/Piquage/France/Sylitex' - second_production_source_site = 'site/Piquage/Tunisie/String' - destination_company_group = 'group/Coramy' - first_name1 = 'Sebastien' - last_name1 = 'Robin' - destination_company_id = 'Coramy' - component_id = 'brick' - component_id2 = 'tissu' - sales_order_id = '1' - purchase_order_id = '1' - quantity = 10 - low_quantity = 4 - modele_id1 = '001B402' - base_price1 = 0.7832 - base_price2 = 5.3349 - variante_id1 = 'variante_1' - variante_id2 = 'variante_2' - taille_list1 = ('taille/adulte/36','taille/adulte/40','taille/adulte/42') - variation_base_category_list1 = ('coloris','taille') - variation_category_list1 = ('coloris/modele/%s/%s' % (modele_id1,variante_id1), - 'coloris/modele/%s/%s' % (modele_id1,variante_id2), - 'taille/adulte/40','taille/adulte/42') - simulation_line_id_list = ('1_movement_0_0','1_movement_0_1','1_movement_1_0','1_movement_1_1') - simple_simulation_line_id_list = ('1') - - def getBusinessTemplateList(self): - """ - Return the list of business templates. - - the business template crm give the following things : - modules: - - person - - organisation - base categories: - - region - - subordination - - /organisation - """ - #return ('erp5_crm','coramy_catalog','coramy_order') - return ('erp5_core','coramy_catalog','coramy_order') - - def convertToLowerCase(self, key): - """ - This function returns an attribute name - thanks to the name of a class - for example convert 'Purchase Order' to 'purchase_order' - """ - result = key.lower() - result = result.replace(' ','_') - return result - - - def getPersonModule(self): - return getattr(self.getPortal(), 'person', None) - - def getOrganisationModule(self): - return getattr(self.getPortal(), 'organisation', None) - - def getModeleModule(self): - return getattr(self.getPortal(), 'modele', None) - - def getTransformationModule(self): - return getattr(self.getPortal(), 'transformation', None) - - def getPurchaseOrderModule(self): - return getattr(self.getPortal(), 'commande_achat', None) - - def getPurchasePackingListModule(self): - return getattr(self.getPortal(), 'livraison_achat', None) - - def getSalesPackingListModule(self): - return getattr(self.getPortal(), 'livraison_vente', None) - - def getProductionPackingListModule(self): - return getattr(self.getPortal(), 'livraison_fabrication', None) - - def getProductionOrderModule(self): - return getattr(self.getPortal(), 'ordre_fabrication', None) - - def getGammeModule(self): - return getattr(self.getPortal(), 'gamme', None) - - def getSalesOrderModule(self): - return getattr(self.getPortal(), 'commande_vente', None) - - def getTissuModule(self): - return getattr(self.getPortal(), 'tissu', None) - - def getTransformationModule(self): - return getattr(self.getPortal(), 'transformation', None) - - def getComponentModule(self): - return getattr(self.getPortal(), 'composant', None) - - def getPortalId(self): - return self.getPortal().getId() - - def failIfDifferentSet(self, a,b): - LOG('failIfDifferentSet',0,'a:%s b:%s' % (repr(a),repr(b))) - for i in a: - self.failUnless(i in b) - for i in b: - self.failUnless(i in a) - self.assertEquals(len(a),len(b)) - - def afterSetUp(self, quiet=1, run=1): - self.login() - portal = self.getPortal() - portal_catalog = self.getCatalogTool() - portal_catalog.manage_catalogClear() - # First set Acquisition - portal.ERP5_setAcquisition() - # Then reindex - # portal.ERP5Site_reindexAll() - LOG('afterSetup',0,'portal.portal_categories.immediateReindexObject') - portal.portal_categories.immediateReindexObject() - for o in portal.portal_categories.objectValues(): - LOG('afterSetup portal_categies',0,o.getPath()) - o.recursiveImmediateReindexObject() - LOG('afterSetup',0,'portal.portal_simulation.immediateReindexObject') - portal.portal_simulation.immediateReindexObject() - for o in portal.portal_simulation.objectValues(): - o.recursiveImmediateReindexObject() - LOG('afterSetup',0,'portal.portal_rules.immediateReindexObject') - portal.portal_rules.immediateReindexObject() - - organisation_module = self.getOrganisationModule() - organisation_module.immediateReindexObject() - o1 = organisation_module.newContent(id=self.source_company_id) - o2 = organisation_module.newContent(id=self.destination_company_id) - component_module = self.getComponentModule() - component_module.immediateReindexObject() - c1 = component_module.newContent(id=self.component_id) - c1.setBasePrice(self.base_price1) - c1.setPrice(self.base_price1) - c1 = component_module.newContent(id=self.component_id2) - c1.setBasePrice(self.base_price2) - c1.setPrice(self.base_price2) - person_module = self.getPersonModule() - person_module.immediateReindexObject() - p1 = person_module.newContent(id=self.sale_manager_id) - kw = {'first_name':self.first_name1,'last_name':self.last_name1} - p1.edit(**kw) - modele_module = self.getModeleModule() - - def login(self, quiet=0, run=run_all_test): - uf = self.getPortal().acl_users - uf._doAddUser('seb', '', ['Manager','Superviseur'], []) - user = uf.getUserById('seb').__of__(uf) - newSecurityManager(None, user) - - def constructEmptyOrder(self, sequence=None, sequence_list=None,order_type=None,**kw): - # create a complete order - #sales_module = self.getSalesOrderModule() - method_name = 'get' + order_type.replace(' ','') + 'Module' - method = getattr(self,method_name) - order_module = method() - order = order_module.newContent(portal_type=order_type) - sequence.edit(order=order) - portal = self.getPortal() - source_company = self.getOrganisationModule()._getOb(self.source_company_id) - destination_company = self.getOrganisationModule()._getOb(self.destination_company_id) - sale_manager = self.getPersonModule()._getOb(self.sale_manager_id) - # Set date - date = DateTime() # the value is now - target_start_date = date + 10 # Add 10 days - target_stop_date = date + 12 # Add 12 days - order.setTargetStartDate(target_start_date) - order.setTargetStopDate(target_stop_date) - # Set Profile - portal_categories = self.getCategoryTool() - if order_type == 'Production Order': - stock_category = portal_categories.resolveCategory(self.production_destination_site) - source_company = portal_categories.resolveCategory(self.production_source_site) - else: - stock_category = portal_categories.resolveCategory(self.destination_company_stock) - group_category = portal_categories.resolveCategory(self.destination_company_group) - sequence.edit(source_value=source_company, - source_section_value=source_company, - source_decision_value=source_company, - source_administration_value=source_company, - source_payment_value=source_company, - destination_value=stock_category, - destination_section_value=group_category, - destination_decision_value=destination_company, - destination_administration_value=sale_manager, - destination_payment_value=destination_company) - order.setTargetSourceValue(source_company) - order.setTargetSourceSectionValue(source_company) - order.setSourceDecisionValue(source_company) - order.setSourceAdministrationValue(source_company) - order.setSourcePaymentValue(source_company) - order.setTargetDestinationValue(stock_category) - order.setTargetDestinationSectionValue(group_category) - order.setDestinationDecisionValue(destination_company) - order.setDestinationAdministrationValue(sale_manager) - order.setDestinationPaymentValue(destination_company) - # Look if the profile is good - self.failUnless(order.getTargetSourceValue()!=None) - self.failUnless(order.getTargetDestinationValue()!=None) - self.failUnless(order.getTargetSourceSectionValue()!=None) - self.failUnless(order.getTargetDestinationSectionValue()!=None) - self.failUnless(order.getSourceDecisionValue()!=None) - self.failUnless(order.getDestinationDecisionValue()!=None) - self.failUnless(order.getSourceAdministrationValue()!=None) - self.failUnless(order.getDestinationAdministrationValue()!=None) - self.failUnless(order.getSourcePaymentValue()!=None) - self.failUnless(order.getDestinationPaymentValue()!=None) - attribute_name = self.convertToLowerCase(order_type) - kw = {attribute_name:order} - sequence.edit(**kw) - sequence.edit(order_type=order_type) - -# def constructEmptySalesOrder(self, sequence=None, sequence_list=None,**kw): -# # Test if we can add a complete sales order -# self.constructEmptyOrder(sequence=sequence,sequence_list=sequence_list, -# order_type='Sales Order', **kw) -# -# def constructEmptyProductionOrder(self, sequence=None, sequence_list=None,**kw): -# # Test if we can add a complete sales order -# self.constructEmptyOrder(sequence=sequence,sequence_list=sequence_list, -# order_type='Production Order', **kw) -# - def constructResource(self, sequence=None, sequence_list=None,**kw): - component_module = self.getComponentModule() - resource = component_module.newContent() - resource.setBasePrice(self.base_price1) - resource.setPrice(self.base_price1) - sequence.edit(resource=resource) - resource2 = component_module.newContent() - resource2.setBasePrice(self.base_price1) - resource2.setPrice(self.base_price1) - sequence.edit(resource2=resource2) - - def constructVariatedResource(self, sequence=None, sequence_list=None,**kw): - modele_module = self.getModeleModule() - modele = modele_module.newContent() - modele.setTailleList(self.taille_list1) - # Add variation to the modele - variante_modele_1 = modele.newContent(id=self.variante_id1,portal_type='Variante Modele') - category_variante_modele_1 = 'coloris/modele/%s/%s' % (modele.getId(),self.variante_id1) - sequence.edit(category_variante_modele_1=category_variante_modele_1) - variante_modele_2 = modele.newContent(id=self.variante_id2,portal_type='Variante Modele') - category_variante_modele_2 = 'coloris/modele/%s/%s' % (modele.getId(),self.variante_id2) - sequence.edit(category_variante_modele_2=category_variante_modele_2) - sequence.edit(resource=modele) - # We should also construct the corresponding transformation - transformation_module = self.getTransformationModule() - transformation = transformation_module.newContent(portal_type='Transformation') - sequence.edit(transformation=transformation) - transformation.setResourceValue(modele) - transformation.setVariationBaseCategoryList(self.variation_base_category_list1) - transformation.setVariationBaseCategoryLine('coloris') - transformation.setVariationBaseCategoryColumn('taille') - variation_category_list = (category_variante_modele_1, category_variante_modele_2, - 'taille/adulte/40','taille/adulte/42') - sequence.edit(variation_category_list=variation_category_list) - transformation.setVariationCategoryList(variation_category_list) - color_list = filter(lambda x: x.find('coloris')>=0,variation_category_list) - sequence.edit(color_list=color_list) - size_list = filter(lambda x: x.find('taille')>=0,variation_category_list) - sequence.edit(size_list=size_list) - color_and_size_list = [] - # This define (('coloris/modele/1/1,taille/adulte/40',('coloris/modele/1/1',taille/adulte/42)...) - for c in color_list: - for s in size_list: - color_and_size_list.append((c,s)) - sequence.edit(color_and_size_list=color_and_size_list) - self.addTissuToTransformation(sequence=sequence,sequence_list=sequence_list) - sequence.edit(good_tissu_list=sequence.get('tissu_list')) - # We should construct the corresponding gamme - # XXX Finally I'm not sure we really need the gamme XXX -# gamme_module = self.getGammeModule() -# gamme = gamme_module.newContent(portal_type='Gamme') -# modele.setSpecialiseValue(gamme) -# sequence.edit(gamme=gamme) -# tissu1_variante1 = sequence.get('tissu1_variante1') -# tissu1_variante2 = sequence.get('tissu1_variante2') -# variante_gamme1 = gamme.newContent(portal_type='Variante Gamme',id=self.variante_id1) -# variante_gamme1.setCouleurValueList([tissu1_variante1]) -# variante_gamme2 = gamme.newContent(portal_type='Variante Gamme',id=self.variante_id2) -# variante_gamme2.setCouleurValueList([tissu1_variante2]) -# LOG("transformation._getOb('1').__dict__",0,transformation._getOb('1').__dict__) -# LOG("transformation._getOb('1').quantity_0_0.__dict__",0,transformation._getOb('1').quantity_0_0.__dict__) -# LOG("gamme.__dict__",0,gamme.__dict__) -# LOG("variante_gamme1.__dict__",0,variante_gamme1.__dict__) - LOG("modele.__dict__",0,modele.__dict__) - LOG("transformation.sowDict()",0,transformation.showDict()) - LOG("transformation.getAggregatedAmountList()",0,transformation.getAggregatedAmountList()) - - def addTissuToTransformation(self, sequence=None, sequence_list=None, **kw): - # We should construct the corresponding tissu - tissu_list = sequence.get('tissu_list',[]) - transformation = sequence.get('transformation') - tissu_module = self.getTissuModule() - tissu = tissu_module.newContent(portal_type='Tissu') - tissu.setSourceBasePrice('7.7') - tissu.setPricedQuantity('1') - tissu.setVariationBaseCategoryList(['coloris']) - tissu_list.extend([tissu]) - sequence.edit(tissu_list=tissu_list) - tissu.setQuantityUnit('Longueur/Metre') - tissu_variante1 = tissu.newContent(portal_type='Variante Tissu',id=self.variante_id1) - category_tissu_variante1 = 'coloris/tissu/%s/%s' % (tissu.getId(),tissu_variante1.getId()) - tissu_variante2 = tissu.newContent(portal_type='Variante Tissu',id=self.variante_id2) - category_tissu_variante2 = 'coloris/tissu/%s/%s' % (tissu.getId(),tissu_variante2.getId()) - seq_kw = {'tissu%s' % tissu.getId():tissu, - 'tissu%s_variante1' % tissu.getId():tissu_variante1, - 'tissu%s_variante2' % tissu.getId():tissu_variante2, - 'category_tissu%s_variante1' % tissu.getId():category_tissu_variante1, - 'category_tissu%s_variante2' % tissu.getId():category_tissu_variante2} - sequence.edit(**seq_kw) - if sequence.get('tissu_first') is None: - sequence.edit(tissu_first=tissu) - elif sequence.get('tissu_second') is None: - sequence.edit(tissu_second=tissu) - # Add a transformed resource to this transformation - transformation_component = transformation.newContent(portal_type='Transformation Component') - transformation_component.setResourceValue(tissu) - transformation_component.setElementComposition(True) # This is one element of the transformation - transformation_component.setVVariationBaseCategoryList(['coloris']) - transformation_component.setQVariationBaseCategoryList(['taille']) - #transformation_component.setTailleList(['taille/adulte/40','taille/adulte/42']) - # Create quantity cells for the transformation component - args = (None,'taille/adulte/40') - kw = {'base_id':'quantity'} - cell = transformation_component.newCell(*args,**kw) - cell.setPredicateOperator('SUPERSET_OF') - cell.setMembershipCriterionCategoryList(['taille/adulte/40']) - cell.setMembershipCriterionBaseCategoryList(['taille']) - cell.setMappedValuePropertyList(['quantity']) - cell.setQuantity(4200.0) - LOG('transformation_cell.showDict()',0,cell.showDict()) - args = (None,'taille/adulte/42') - kw = {'base_id':'quantity'} - cell = transformation_component.newCell(*args,**kw) - cell.setPredicateOperator('SUPERSET_OF') - cell.setMembershipCriterionCategoryList(['taille/adulte/42']) - cell.setMembershipCriterionBaseCategoryList(['taille']) - cell.setMappedValuePropertyList(['quantity']) - cell.setQuantity(4500.0) - LOG('transformation_cell.showDict()',0,cell.showDict()) - cell_list = transformation_component.objectValues() - cell_list = filter(lambda x: x.getId().find('quantity')==0, cell_list) - self.assertEquals(len(cell_list),2) - # Create variation cells for the transformation component - # First variation cell - category_variante_modele_1 = sequence.get('category_variante_modele_1') - args = (category_variante_modele_1,None) - kw = {'base_id':'variation'} - cell = transformation_component.newCell(*args,**kw) - cell.setPredicateOperator('SUPERSET_OF') - cell.setMembershipCriterionBaseCategoryList(['coloris']) - cell.setMappedValueBaseCategoryList(['coloris']) # XXX This looks like mandatory in TransformedResource for - # getAggregatedAmountList, why ???? - cell.setMembershipCriterionCategoryList([category_variante_modele_1]) - cell.setCategoryList([category_tissu_variante1]) - # Second variation cell - category_variante_modele_2 = sequence.get('category_variante_modele_2') - LOG('transformation_cell.showDict()',0,cell.showDict()) - args = (category_variante_modele_2,None) - kw = {'base_id':'variation'} - cell = transformation_component.newCell(*args,**kw) - cell.setPredicateOperator('SUPERSET_OF') - cell.setMembershipCriterionBaseCategoryList(['coloris']) - cell.setMappedValueBaseCategoryList(['coloris']) # XXX This looks like mandatory in TransformedResource for - # getAggregatedAmountList, why ???? - cell.setMembershipCriterionCategoryList([category_variante_modele_2]) - cell.setCategoryList([category_tissu_variante2]) - LOG('transformation_cell.showDict()',0,cell.showDict()) - # Finally check the number of cells - cell_list = transformation_component.objectValues() - cell_list = filter(lambda x: x.getId().find('variation')==0, cell_list) - self.assertEquals(len(cell_list),2) - LOG('transformation_component.showDict()',0,transformation_component.showDict()) - - def stepAddSalesOrder(self, sequence=None, sequence_list=None,**kw): - self.constructEmptyOrder(sequence=sequence,sequence_list=sequence_list, - order_type='Sales Order', **kw) - # Add a sales order line - sales_order = sequence.get('sales_order') - sales_order_line = sales_order.newContent(id='1',portal_type='Sales Order Line') - component_module = self.getComponentModule() - component = component_module._getOb(self.component_id) - sequence.edit(resource=component) - self.constructResource(sequence=sequence,sequence_list=sequence_list,**kw) - component = sequence.get('resource') - sales_order_line.setResourceValue(component) - self.assertEquals(sales_order_line.getResourceValue(),component) - sales_order_line.setTargetQuantity(self.quantity) - sales_order_line.setPrice(self.base_price1) - # See what's the output of Order_lightControl - result=sales_order.Order_lightControl() - self.assertEquals(result,'') - # See what's the output of Order_heavyControl - result=sales_order.Order_heavyControl() - result = result.replace('\n','') - self.assertEquals(result,'') - - def stepModifyVariationId(self, sequence=None, sequence_list=None,**kw): - resource = sequence.get('resource') - content_list = resource.contentValues(filter={'portal_type':'Variante Modele'}) - # Rename the first variation - variation = content_list[0] - #variation.setId('renamed_' + variation.getId()) - variation.setId('renamed_' + variation.getId()) - variation_category_list = ('coloris/modele/%s/%s' % (resource.getId(),content_list[0].getId()), - 'coloris/modele/%s/%s' % (resource.getId(),content_list[1].getId()), - 'taille/adulte/40','taille/adulte/42') - sequence.edit(variation_category_list=variation_category_list) - color_list = filter(lambda x: x.find('coloris')>=0,variation_category_list) - sequence.edit(color_list=color_list) - size_list = filter(lambda x: x.find('taille')>=0,variation_category_list) - sequence.edit(size_list=size_list) - sequence.edit(renamed_variation=1) - color_and_size_list = [] - # This define (('coloris/modele/1/1,taille/adulte/40'),('coloris/modele/1/1',taille/adulte/42)...) - for c in color_list: - for s in size_list: - color_and_size_list.append((c,s)) - sequence.edit(color_and_size_list=color_and_size_list) - - def stepAddVariatedSalesOrder(self, sequence=None, sequence_list=None,**kw): - #self.constructEmptySalesOrder(sequence=sequence,sequence_list=sequence_list,**kw) - self.constructEmptyOrder(sequence=sequence,sequence_list=sequence_list, - order_type='Sales Order', **kw) - # Add lines with many variations - sales_order = sequence.get('sales_order') - sales_order_line = sales_order.newContent(id='1',portal_type='Sales Order Line') - self.constructVariatedResource(sequence=sequence,sequence_list=sequence_list,**kw) - sequence.edit(variated_order=1) - resource = sequence.get('resource') - sales_order_line.setResourceValue(resource) - self.assertEquals(sales_order_line.getResourceValue(),resource) - sales_order_line.setVariationBaseCategoryList(self.variation_base_category_list1) - variation_category_list = sequence.get('variation_category_list') - sales_order_line.setVariationCategoryList(variation_category_list) - self.assertEquals(tuple(sales_order_line.getVariationBaseCategoryList()),self.variation_base_category_list1) - self.assertEquals(tuple(sales_order_line.getVariationCategoryList()),variation_category_list) - cell_list = sales_order_line.objectValues() - self.assertEquals(len(cell_list),4) - for cell in cell_list: - cell.setTargetQuantity(self.quantity) - cell.setPrice(self.base_price1) - # See what's the output of Order_lightControl - result=sales_order.Order_lightControl() - self.assertEquals(result,'') - - def stepAddProductionOrder(self, sequence=None, sequence_list=None,**kw): - #self.constructEmptyProductionOrder(sequence=sequence,sequence_list=sequence_list,**kw) - self.constructEmptyOrder(sequence=sequence,sequence_list=sequence_list, - order_type='Production Order', **kw) - production_order = sequence.get('production_order') - order_line = production_order.newContent(id='1',portal_type='Production Order Line') - self.constructVariatedResource(sequence=sequence,sequence_list=sequence_list,**kw) - sequence.edit(variated_order=1) - resource = sequence.get('resource') - order_line.setResourceValue(resource) - order_line.setVariationBaseCategoryList(self.variation_base_category_list1) - variation_category_list = sequence.get('variation_category_list') - order_line.setVariationCategoryList(variation_category_list) - self.assertEquals(tuple(order_line.getVariationBaseCategoryList()),self.variation_base_category_list1) - self.assertEquals(tuple(order_line.getVariationCategoryList()),variation_category_list) - cell_list = order_line.objectValues() - self.assertEquals(len(cell_list),4) - LOG('stepAddProductionOrder, order.showDict',0,production_order.showDict()) - LOG('stepAddProductionOrder, order_line.showDict',0,order_line.showDict()) - transformation = sequence.get('transformation') - for cell in cell_list: - cell.setTargetQuantity(self.quantity) - LOG('stepAddProductionOrder, cell.showDict',0,cell.showDict()) - variation = cell.getVariationCategoryList() - LOG('stepAddProductionOrder, cell.getVariationCategoryList',0,variation) - LOG('stepAddProductionOrder, transformation.getAggregatedAmountList',0,transformation.getAggregatedAmountList(REQUEST = {'categories':variation})) - REQUEST = {'categories':variation} - REQUEST = transformation.asContext(context=transformation,REQUEST=REQUEST) - LOG('stepAddProductionOrder, line.getAggregatedAmountList',0,transformation._getOb('1').getAggregatedAmountList(REQUEST)) - LOG('stepAddProductionOrder, line.getAgg[0].__dict__',0,transformation._getOb('1').getAggregatedAmountList(REQUEST)[0][0].__dict__) - - # See what's the output of Order_lightControl - result=production_order.Order_lightControl() - self.assertEquals(result,'') - - def stepConfirmSalesOrder(self, sequence=None,sequence_list=None): - sales_order = sequence.get('sales_order') - #sales_order.confirm() - LOG('stepConfirmSalesOrder, sales_order',0,sales_order) - sales_order.portal_workflow.doActionFor(sales_order,'user_confirm', - wf_id='order_workflow') - - def stepAcceptPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - LOG('stepAcceptPackingList, packing_list.isDivergent()',0,packing_list.isDivergent()) - portal_workflow = self.getWorkflowTool() - packing_list.portal_workflow.doActionFor(packing_list,'accept_delivery', - wf_id='delivery_causality_workflow') - - def stepSplitAndDeferPackingList(self, sequence=None,sequence_list=None): - portal_workflow = self.getWorkflowTool() - date = DateTime() # the value is now - target_start_date = date + 10 # Add 10 days - target_stop_date = date + 12 # Add 12 days - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'split_defer_delivery', - wf_id='delivery_causality_workflow', - target_start_date=target_start_date, - target_stop_date=target_stop_date) - - # XXX To be checked - def stepRedirectPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - portal_workflow = self.getWorkflowTool() - packing_list.portal_workflow.doActionFor(packing_list,'redirect_delivery', - wf_id='delivery_causality_workflow') - - def stepAcceptDeliveryPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'accept_delivery', - wf_id='delivery_causality_workflow') - - def stepUserGetReadyPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'user_get_ready', - wf_id='delivery_workflow') - - def stepUserSetReadyPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'user_set_ready', - wf_id='delivery_workflow') - - def stepUserStartPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'user_start', - wf_id='delivery_workflow') - - def stepUserConfirmPackingList(self, sequence=None,sequence_list=None): - packing_list = sequence.get('packing_list') - packing_list.portal_workflow.doActionFor(packing_list,'user_confirm', - wf_id='delivery_workflow') - - def stepOrderSalesOrder(self, sequence=None,sequence_list=None): - sales_order = sequence.get('sales_order') - sales_order.portal_workflow.doActionFor(sales_order,'user_order', - wf_id='order_workflow') - - def stepPlanSalesOrder(self, sequence=None, sequence_list=None, **kw): - portal = self.getPortal() - sales_order = sequence.get('sales_order') - sales_order.portal_workflow.doActionFor(sales_order,'user_plan', - wf_id='order_workflow') - - def stepConfirmProductionOrder(self, sequence=None, sequence_list=None, **kw): - portal = self.getPortal() - production_order = sequence.get('production_order') - production_order.portal_workflow.doActionFor(production_order,'usof_confirm', - wf_id='order_workflow') - - def stepOrderProductionOrder(self, sequence=None, sequence_list=None, **kw): - portal = self.getPortal() - production_order = sequence.get('production_order') - production_order.portal_workflow.doActionFor(production_order,'usof_order', - wf_id='order_workflow') - - def stepPlanProductionOrder(self, sequence=None, sequence_list=None, **kw): - portal = self.getPortal() - production_order = sequence.get('production_order') - production_order.portal_workflow.doActionFor(production_order,'usof_plan', - wf_id='order_workflow') - - def stepCheckConfirmOrder(self, sequence=None, sequence_list=None, **kw): - if sequence.get('order_type') == 'Production Order': - order = sequence.get('production_order') - else: - order = sequence.get('sales_order') - order_line = order._getOb('1') - simulation_tool = self.getSimulationTool() - simulation_object_list = simulation_tool.objectValues() - self.failUnless(len(simulation_object_list)>0) - related_simulation_object_list = [] - simulation_object = None - for o in simulation_object_list: - if o.getCausalityValue()==order: - related_simulation_object_list.append(o) - if len(related_simulation_object_list)>0: - simulation_object = related_simulation_object_list[0] - sequence.edit(simulation_object=simulation_object) - self.assertNotEquals(simulation_object,None) - sequence.edit(simulation_object_list=related_simulation_object_list) - self.assertEquals(len(related_simulation_object_list),1) - sequence.edit(simulation_object=simulation_object) - - # XXX to be removed - packing_list = sequence.get('packing_list') - if packing_list is not None: - LOG('stepCheckConfirmOrder, packing_list.isConvergent()',0,packing_list.isConvergent()) - LOG('stepCheckConfirmOrder, packing_list.getMovementList()',0,packing_list.getMovementList()) - - - # Check if there is a line on the simulation object - # And if this line get all informations - line_list = simulation_object.objectValues() - line = line_list[0] - sequence.edit(simulation_line_list=line_list) - if sequence.get('variated_order') is None: - self.assertEquals(len(line_list),1) - self.assertEquals(line.getQuantity(),self.quantity) - else: - self.assertEquals(len(line_list),4) - # Check if the order of each line of the simulation - # object is a cell of the order - cell_list = order_line.objectValues() - LOG('CheckConfirmOrder cell_list',0,cell_list) - order_list = map(lambda x: x.getOrderValue(), line_list) - LOG('CheckConfirmOrder order_list',0,order_list) - self.failIfDifferentSet(cell_list,order_list) - color_and_size_list = sequence.get('color_and_size_list') - cell_color_and_size_list = map(lambda x: x.getCategoryList(),cell_list) - LOG('stepCheckConfirmOrder color_and_size_list',0,color_and_size_list) - LOG('stepCheckConfirmOrder cell_color_and_size_list',0,cell_color_and_size_list) - self.failIfDifferentSet(color_and_size_list,cell_color_and_size_list) - for cell in cell_list: - LOG('stepCheckConfirmOrder cell.getPhysicalPath()',0,cell.getPhysicalPath()) - self.assertEquals(cell.getTargetQuantity(),self.quantity) - self.failIfDifferentSet(cell.getDomainBaseCategoryList(),self.variation_base_category_list1) - # Check the profile for this cell - if sequence.get('modified_packing_list_path') is None: # if - self.assertEquals(cell.getSourceValue(),sequence.get('source_value')) - self.assertEquals(cell.getSourceSectionValue(),sequence.get('source_section_value')) - self.assertEquals(cell.getSourceDecisionValue(),sequence.get('source_decision_value')) - self.assertEquals(cell.getSourceAdministrationValue(),sequence.get('source_administration_value')) - self.assertEquals(cell.getSourcePaymentValue(),sequence.get('source_payment_value')) - self.assertEquals(cell.getDestinationValue(),sequence.get('destination_value')) - self.assertEquals(cell.getDestinationSectionValue(),sequence.get('destination_section_value')) - self.assertEquals(cell.getDestinationDecisionValue(),sequence.get('destination_decision_value')) - self.assertEquals(cell.getDestinationAdministrationValue(),sequence.get('destination_administration_value')) - self.assertEquals(cell.getDestinationPaymentValue(),sequence.get('destination_payment_value')) - # Check membership criterion - membership_criterion_category_list_list = map(lambda x: tuple(x.getMembershipCriterionCategoryList()),cell_list) - LOG('stepCheckConfirmOrder, color_and_size_list',0,color_and_size_list) - LOG('stepCheckConfirmOrder, membership_criterion_category_list_list',0,membership_criterion_category_list_list) - self.failIfDifferentSet(color_and_size_list,membership_criterion_category_list_list) - predicate_value_list_list = map(lambda x: tuple(x.getPredicateValueList()),cell_list) - LOG('stepCheckConfirmOrder, color_and_size_list',0,color_and_size_list) - LOG('stepCheckConfirmOrder, predicate_value_list_list',0,predicate_value_list_list) - self.failIfDifferentSet(color_and_size_list,predicate_value_list_list) - - def stepCheckPackingListDiverged(self, sequence=None, sequence_list=None, **kw): - packing_list = sequence.get('packing_list') - portal_workflow = self.getWorkflowTool() - LOG('stepCheckPackingListDiverged, isDivergent()',0,packing_list.isDivergent()) - LOG('stepCheckPackingListDiverged, isConvergent()',0,packing_list.isConvergent()) - self.assertEquals(packing_list.isDivergent(),1) - self.assertEquals(portal_workflow.getInfoFor(packing_list,'causality_state'),'diverged') - - def stepCheckPackingListConverged(self, sequence=None, sequence_list=None, **kw): - packing_list = sequence.get('packing_list') - portal_workflow = self.getWorkflowTool() - LOG('stepCheckPackingListConverged, packing_list.isConvergent()',0,packing_list.isConvergent()) - self.assertEquals(portal_workflow.getInfoFor(packing_list,'causality_state'),'solved') - - def stepModifySalesOrder(self, sequence=None, sequence_list=None, **kw): - sales_order = sequence.get('sales_order') - sales_order_line = sales_order._getOb('1') - sales_order_line.setTargetQuantity(self.quantity + 1) - component_module = self.getComponentModule() - component = component_module._getOb(self.component_id2) - sales_order_line.setResourceValue(component) - self.assertEquals(sales_order_line.getResourceValue(),component) - - def stepActivateRequirementList(self, sequence=None, sequence_list=None, **kw): - portal = self.getPortal() - result = portal.SimulationTool_activateRequirementList() - result = result.replace('\n','') - self.assertEquals(result,'') - - def stepCheckActivateRequirementList(self, sequence=None, sequence_list=None, **kw): - mp_packing_list_list = [] # mp stands for Raw Material - packing_list_list = [] - if sequence.get('order_type') == 'Production Order': - packing_list_module = self.getProductionPackingListModule() - order = sequence.get('production_order') - else: - packing_list_module = self.getSalesPackingListModule() - order = sequence.get('sales_order') - all_packing_list_list = packing_list_module.objectValues() - packing_list = None - related_list = [] - for o in all_packing_list_list: - if o.getCausalityValue()==order: - related_list.append(o) - LOG('stepCheckActivateRequirementList, 1 packing_list.asXML()',0,o.asXML()) - if sequence.get('order_type')=='Production Order': - # We should find the packing list corresponding the the - # delivery of the resource, not the delivery of raw materials - if sequence.get('modified_packing_list_resource') == 1: - self.assertEquals(len(related_list),3) - else: - #self.assertEquals(len(related_list),2) - self.assertEquals(len(related_list),2) # XXXXXXXXXXXXXXXXXXXXXXXXXXX must be 2 - else: - self.assertEquals(len(related_list),1) - for p in related_list: - LOG('stepCheckActivateRequirementList, packing_list.asXML()',0,p.asXML()) - for o in p.objectValues(): - found = 0 - if o.getResourceValue()==sequence.get('resource'): - packing_list_list.extend([p]) - found = 1 - if not found: - mp_packing_list_list.extend([p]) - - self.assertEquals(len(packing_list_list),1) - portal_workflow = self.getWorkflowTool() - sequence.edit(packing_list=packing_list_list[0]) - sequence.edit(mp_packing_list_list=mp_packing_list_list) - - # Check everything inside the simulation - # Check the applied rule - simulation_object = sequence.get('simulation_object') - self.assertEquals(simulation_object.getLastExpandSimulationState(),'confirmed') - self.assertEquals(simulation_object.getSpecialiseId(),'default_order_rule') - self.assertEquals(simulation_object.getCausalityValue(),order) - # Then check every line of the applied rule - simulation_line_list = sequence.get('simulation_line_list') - simulation_line_id_list = map(lambda x: x.getId(),simulation_line_list) - #if sequence.get('order_type') == 'Production Order': - if sequence.get('variated_order'): - self.failIfDifferentSet(self.simulation_line_id_list,simulation_line_id_list) - else: - self.failIfDifferentSet(self.simple_simulation_line_id_list,simulation_line_id_list) - for line in simulation_line_list: - self.assertEquals(line.getDeliverable(),1) - self.assertEquals(line.getCausalityState(),'expanded') - #if sequence.get('order_type') == 'Production Order': - if sequence.get('variated_order'): - delivery_line_id = line.getId().split('_',1)[1] - self.assertEquals(line.getOrderValue(),order._getOb('1')._getOb(delivery_line_id)) - else: - delivery_line_id = line.getId() - self.assertEquals(line.getOrderValue(),order._getOb('1')) - self.assertEquals(line.getStartDate(),order.getStartDate()) - self.assertEquals(line.getStopDate(),order.getStopDate()) - #FAILS self.assertEquals(line.getTargetStartDate(),order.getTargetStartDate()) - #FAILS self.assertEquals(line.getTargetStopDate(),order.getTargetStopDate()) - self.assertEquals(line.getTargetSourceValue(),sequence.get('source_value')) - self.assertEquals(line.getSourceValue(),sequence.get('source_value')) - self.assertEquals(line.getSourceSectionValue(),sequence.get('source_section_value')) - self.assertEquals(line.getSourceDecisionValue(),sequence.get('source_decision_value')) - self.assertEquals(line.getSourceAdministrationValue(),sequence.get('source_administration_value')) - self.assertEquals(line.getSourcePaymentValue(),sequence.get('source_payment_value')) - self.assertEquals(line.getDestinationValue(),sequence.get('destination_value')) - self.assertEquals(line.getDestinationSectionValue(),sequence.get('destination_section_value')) - self.assertEquals(line.getDestinationDecisionValue(),sequence.get('destination_decision_value')) - self.assertEquals(line.getDestinationAdministrationValue(),sequence.get('destination_administration_value')) - self.assertEquals(line.getDestinationPaymentValue(),sequence.get('destination_payment_value')) - order_cell = line.getOrderValue() - delivery_cell = line.getDeliveryValue() - root_order = order_cell.getRootDeliveryValue() - root_delivery = delivery_cell.getRootDeliveryValue() - self.assertEquals(line.getQuantityUnit(),order_cell.getQuantityUnit()) - # now check the rule inside this line - rule_list = line.objectValues() - - if sequence.get('order_type') == 'Production Order': - self.assertEquals(len(rule_list),1) - rule = rule_list[0] - self.assertEquals(rule.getId(),'default_transformation_rule') - self.assertEquals(rule.getSpecialiseId(),'default_transformation_rule') - self.assertEquals(rule.getCausalityValue(),sequence.get('transformation')) - # now check objects inside this rule - rule_line_list = rule.objectValues() - rule_line_list = rule.objectValues() - self.assertEquals(len(rule_line_list),2) - good_rule_line_id_list = ('produced_resource','transformed_resource_0') - rule_line_id_list = map(lambda x: x.getId(),rule_line_list) - self.failIfDifferentSet(good_rule_line_id_list,rule_line_id_list) - for rule_line in rule_line_list: - self.assertEquals(rule_line.getPortalType(),'Simulation Movement') - if rule_line.getId()=='produced_resource': - self.assertEquals(rule_line.getResourceValue(),sequence.get('resource')) - #self.assertEquals(rule_line.getTargetStartDate(),order.getTargetStartDate()) - self.assertEquals(rule_line.getCausalityState(),'expanded') - #self.assertEquals(rule_line.getDestinationSection(),sequence.get('destination_section_value')) - self.failIfDifferentSet(line.getVariationCategoryList(),rule_line.getVariationCategoryList()) - # Check if there is nothing inside - self.assertEquals(len(rule_line.objectValues()),0) - if rule_line.getId()=='transformed_resource_0': - tissu = rule_line.getResourceValue() - self.assertNotEquals(tissu,None) - #good_variation_list = [sequence.get('category_tissu%s_variante')] - #good_variation_list = filter(lambda x: x.find('color')==0,line.getVariationCategoryList()) - self.assertEquals(len(rule_line.getVariationCategoryList()),1) - variante = rule_line.getVariationCategoryList()[0] - variante = variante.split('_')[len(variante.split('_'))-1] - good_variation_list = [sequence.get('category_tissu%s_variante%s' % (tissu.getId(),variante))] - - LOG('good_variation_list',0,good_variation_list) - LOG('rule_line.getVariationCategoryList()',0,rule_line.getVariationCategoryList()) - LOG('rule_line.showDict',0,rule_line.showDict()) - self.failIfDifferentSet(good_variation_list,rule_line.getVariationCategoryList()) - tissu = sequence.get('tissu_list')[0] - self.assertEquals(rule_line.getResourceValue(),tissu) - self.assertEquals(rule_line.getSourceValue(),sequence.get('source_value')) - self.assertEquals(rule_line.getSourceSectionValue(),sequence.get('source_section_value')) - # Check object inside - sourcing_line_list = rule_line.objectValues() - self.assertEquals(len(sourcing_line_list),1) - sourcing_line = sourcing_line_list[0] - self.assertEquals(sourcing_line.getId(),'default_transformation_sourcing_rule') - self.assertEquals(sourcing_line.getSpecialiseId(),'default_transformation_sourcing_rule') - self.assertEquals(sourcing_line.getPortalType(),'Applied Rule') - transformation_source_list = sourcing_line.objectValues() - self.assertEquals(len(transformation_source_list),1) - transformation_source = transformation_source_list[0] - self.assertEquals(transformation_source.getId(),'transformation_source') - LOG('transformation_source.getVariationCategoryList()',0,transformation_source.getVariationCategoryList()) - self.failIfDifferentSet(transformation_source.getVariationCategoryList(),good_variation_list) - LOG('transformation_source.showDict()',0,transformation_source.showDict()) - resource_delivery_cell = transformation_source.getDeliveryValue() - resource_root_delivery = resource_delivery_cell.getRootDeliveryValue() - LOG('resource_root_delivery.getPath()',0,resource_root_delivery.getPath()) - self.assertNotEquals(resource_root_delivery,root_delivery) - else: - self.assertEquals(len(rule_list),0) - - # Check all packing list - cancelled_list = [] - for packing_list in related_list: - if sequence.get('modified_packing_list_resource') == 1: - if portal_workflow.getInfoFor(packing_list,'simulation_state') == 'cancelled': - # Here we have a canceled packing list after the fusion - cancelled_list.append(packing_list) - continue - self.assertEquals(portal_workflow.getInfoFor(packing_list,'simulation_state'),'confirmed') - LOG('looking at packing_list:',0,packing_list.getPhysicalPath()) - # Check if there is a line on the packing_list - # And if this line get all informations - line_list = packing_list.objectValues() - if packing_list in packing_list_list: - self.assertEquals(len(line_list),1) - line = line_list[0] - resource = sequence.get('resource') - self.assertEquals(line.getResourceValue(),resource) - else: - tissu_list = sequence.get('good_tissu_list') - all_tissu_list = sequence.get('tissu_list') - line_resource_list = map(lambda x: x.getResourceValue(),line_list) - LOG('CheckActivateRequirementList, tissu_list:',0,tissu_list) - LOG('CheckActivateRequirementList, line_resource_list:',0,line_resource_list) - self.assertEquals(len(line_list),len(tissu_list)) - if sequence.get('modified_packing_list_resource') == 1: - self.failIfDifferentSet(line_resource_list,all_tissu_list) - #for tissu in tissu_list: - # LOG('CheckActivateRequirementList, good_tissu_list',0,tissu_list) - # LOG('CheckActivateRequirementList, line_resource_list',0,line_resource_list) - # self.assertEquals(True,tissu in line_resource_list) - - else: - self.failIfDifferentSet(line_resource_list,tissu_list) - - for line in line_list: - if sequence.get('variated_order') is None: - self.assertEquals(line.getTotalQuantity(),self.quantity) - self.assertEquals(len(line.objectValues()),0) - else: - cell_list = line.objectValues() - if line.getResourceValue()==sequence.get('resource'): - self.assertEquals(len(line.objectValues()),4) - else: - # This is the packing list for the raw material - self.assertEquals(len(line.objectValues()),2) - - # check variation_base_category_list - if line.getResourceValue()==sequence.get('resource'): - self.failIfDifferentSet(line.getVariationBaseCategoryList(),self.variation_base_category_list1) - self.assertEquals(len(cell_list),4) - color_and_size_list = sequence.get('color_and_size_list') - membership_criterion_category_list = map(lambda x: tuple(x.getMembershipCriterionCategoryList()),cell_list) - LOG('stepCheckActivateRequirementList, color_and_size_list',0,color_and_size_list) - LOG('stepCheckActivateRequirementList, membership_criterion_category_list',0,membership_criterion_category_list) - self.failIfDifferentSet(color_and_size_list,membership_criterion_category_list) - for cell in cell_list: - LOG('stepCheckActivateRequirementList, cell.getCategoryList',0,cell.getCategoryList()) - self.assertEquals(cell.getTargetQuantity(),self.quantity) - self.assertEquals(cell.getSourceValue(),sequence.get('source_value')) - self.assertEquals(cell.getSourceSectionValue(),sequence.get('source_section_value')) - self.assertEquals(cell.getSourceDecisionValue(),sequence.get('source_decision_value')) - self.assertEquals(cell.getSourceAdministrationValue(),sequence.get('source_administration_value')) - self.assertEquals(cell.getSourcePaymentValue(),sequence.get('source_payment_value')) - self.assertEquals(cell.getDestinationValue(),sequence.get('destination_value')) - self.assertEquals(cell.getDestinationSectionValue(),sequence.get('destination_section_value')) - self.assertEquals(cell.getDestinationDecisionValue(),sequence.get('destination_decision_value')) - self.assertEquals(cell.getDestinationAdministrationValue(),sequence.get('destination_administration_value')) - self.assertEquals(cell.getDestinationPaymentValue(),sequence.get('destination_payment_value')) - else: - self.assertEquals(True,line.getResourceValue() in sequence.get('tissu_list')) - if not (sequence.get('modified_packing_list_resource') == 1): - self.assertEquals(line.getResourceValue(),sequence.get('tissu_list')[0]) - if sequence.get('modified_packing_list_resource') == 1: - self.assertEquals(len(cancelled_list),1) - - - def stepCheckSplittedAndDefferedPackingList(self, sequence=None, sequence_list=None, **kw): - packing_list_module = self.getSalesPackingListModule() - sales_order = sequence.get('sales_order') - packing_list_list = packing_list_module.objectValues() - - packing_list = None - related_list = [] - for o in packing_list_list: - if o.getCausalityValue()==sales_order: - related_list.append(o) - self.assertEquals(len(related_list),2) - def sort_by_id(x,y): - return cmp(int(x.getId()),int(y.getId())) - # Like this we will have the related_list sorted - # by the order where the packing list where created - related_list.sort(sort_by_id) - packing_list1 = related_list[0] # The First one - line = packing_list1.objectValues()[0] - for cell in line.objectValues(): - self.assertEquals(cell.getTargetQuantity(),self.quantity-1) - packing_list2 = related_list[1] # The First one - line = packing_list2.objectValues()[0] - for cell in line.objectValues(): - self.assertEquals(cell.getTargetQuantity(),1) - - def stepModifyPackingListDestination(self, sequence=None, sequence_list=None, **kw): - packing_list = sequence.get('packing_list') - portal_categories = self.getCategoryTool() - stock_category = portal_categories.resolveCategory(self.production_destination_site2) - LOG('stepModifyPackingListDestination, stock_category',0,stock_category.getPhysicalPath()) - LOG('stepModifyPackingListDestination, packing_list.getDestinationValue()',0,packing_list.getDestinationValue().getPhysicalPath()) - packing_list.setTargetDestinationValue(stock_category) - sequence.edit(destination_value=stock_category) - sequence.edit(modified_packing_list_path=1) - - #def stepLazyModifyPackingListResource(self, sequence=None, sequence_list=None, lazy=0,**kw): - # self.stepModifyPackingListResource(sequence=sequence,sequence_list=sequence_list,lazy=1,**kw) - - def stepModifyPackingListResource(self, sequence=None, sequence_list=None, lazy=0,**kw): - packing_list_list = sequence.get('mp_packing_list_list') - packing_list = packing_list_list[0] - tissu1 = sequence.get('tissu_first') - # We should construct another tissu - tissu_module = self.getTissuModule() - tissu = tissu_module.newContent(portal_type='Tissu') - tissu.setQuantityUnit('Longueur/Metre') - tissu_variante1 = tissu.newContent(portal_type='Variante Tissu',id=self.variante_id1) - category_tissu_variante1 = 'coloris/tissu/%s/%s' % (tissu.getId(),tissu_variante1.getId()) - tissu_variante2 = tissu.newContent(portal_type='Variante Tissu',id=self.variante_id2) - category_tissu_variante2 = 'coloris/tissu/%s/%s' % (tissu.getId(),tissu_variante2.getId()) - seq_kw = {'tissu%s' % tissu.getId():tissu, - 'tissu%s_variante1' % tissu.getId():tissu_variante1, - 'tissu%s_variante2' % tissu.getId():tissu_variante2, - 'category_tissu%s_variante1' % tissu.getId():category_tissu_variante1, - 'category_tissu%s_variante2' % tissu.getId():category_tissu_variante2} - sequence.edit(**seq_kw) - sequence.edit(**seq_kw) - tissu_list = sequence.get('tissu_list',[]) - tissu_list.extend([tissu]) - sequence.edit(tissu_list=tissu_list) - for line in packing_list.objectValues(): - if line.getResourceValue()==tissu1: - line.setResourceValue(tissu) - if lazy!=1: # This means that we will change everything, including cells - def rename_list(value,from_string,to_string): - new_list = [] - for item in value: - item = item.replace(from_string,to_string) - new_list.append(item) - return new_list - from_string = 'tissu/' + tissu1.getId() - to_string = 'tissu/' + tissu.getId() - new_category_list = rename_list(line.getCategoryList(),from_string,to_string) - line.setCategoryList(new_category_list) - #new_variation_category_list = rename_list(line.getVariationCategoryList(),from_string,to_string) - #line.setVariationCategoryList(new_variation_category_list) - def rename_dict(mydict,from_string,to_string): - newdict = PersistentMapping() - for key in mydict.keys(): - new_value = mydict[key] - if getattr(mydict[key],'keys',None) is not None: - new_value = rename_dict(mydict[key],from_string,to_string) - if type(key) is type('a'): - if key.find(from_string)>=0: - new_key = key.replace(from_string,to_string) - newdict[new_key] = PersistentMapping() - newdict[new_key] = new_value - else: - newdict[key] = PersistentMapping() - newdict[key] = new_value - else: - newdict[key] = PersistentMapping() - newdict[key] = new_value - return newdict - - line.index = rename_dict(line.index,from_string,to_string) - - #for id in line.objectIds(): - # line._delObject(id) - for cell in line.objectValues(): - LOG('cell.getPath()',0,cell.getPath()) - LOG('cell.getMembershipCriterionCategoryList',0,cell.getMembershipCriterionCategoryList()) - new_list = rename_list(cell.getMembershipCriterionCategoryList(),from_string,to_string) - cell.setMembershipCriterionCategoryList(new_list) - line.edit() # This simulate the user change, like this we will call propagateFromSimulation - sequence.edit(modified_packing_list_resource=1) - packing_list.recursiveImmediateReindexObject() - - def stepAddLinesToSalesPackingList(self, sequence=None, sequence_list=None, **kw): - packing_list = sequence.get('packing_list') - packing_list_line = packing_list.newContent(portal_type='Sales Packing List Line') - component_module = self.getComponentModule() - component = component_module._getOb(self.component_id) - packing_list_line.setResourceValue(component) - packing_list_line.setTargetQuantity(self.quantity) - sequence.edit(new_packing_list_line=packing_list_line) - - def stepSetLessQuantityToPackingList(self, sequence=None, sequence_list=None, **kw): - #packing_list = sequence.get('packing_list') - #packing_list_line = packing_list._getOb('1') - #packing_list_line.setTargetQuantity(self.low_quantity) # The user can change only the target - #packing_list.edit() # so that we call workflow methods - packing_list = sequence.get('packing_list') - # set quantities - line = packing_list.objectValues()[0] - LOG('stepSplitAndDeferPackingList line.getPortalType:',0,line.getPortalType()) - new_quantity = self.quantity - 1 - if sequence.get('variated_order') is not None: - cell_list = line.objectValues() - for cell in cell_list: - cell.setTargetQuantity(new_quantity) - else: - line.setTargetQuantity(new_quantity) - line.edit() # So that we calls workflow methods - - def stepCheckLessQuantityInSimulation(self, sequence=None, sequence_list=None, **kw): - simulation_object=sequence.get('simulation_object') - line_list = simulation_object.objectValues() - self.assertEquals(len(line_list),1) - line = line_list[0] - #component_module = self.getComponentModule() - #component = component_module._getOb(self.component_id) - self.assertEquals(line.getQuantity(),self.quantity-1) - - def stepTic(self,**kw): - self.tic() - - def testOrder(self, quiet=0,run=1): - sequence_list = SequenceList() - # Simple sequence with only some tic when it is required, - # We create a sales order, confirm and then make sure the corresponding - # packing list is made - # ... OK - sequence_string = 'AddSalesOrder PlanSalesOrder OrderSalesOrder ConfirmSalesOrder' \ - + ' Tic Tic Tic Tic CheckConfirmOrder' \ - + ' Tic Tic CheckActivateRequirementList' - sequence_list.addSequenceString(sequence_string) - - # Simple sequence (same as the previous one) with only some tic when it is required and with no plan, - # ... OK - sequence_string = 'AddSalesOrder Tic ConfirmSalesOrder Tic CheckConfirmOrder ' \ - + 'Tic CheckActivateRequirementList' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we set less quantity in the packing list - # And we want to be sure that we will have less quantity in the simulation after we did accept - # OK - sequence_string = 'AddSalesOrder PlanSalesOrder OrderSalesOrder' \ - + ' ConfirmSalesOrder Tic Tic Tic Tic CheckConfirmOrder' \ - + ' Tic CheckActivateRequirementList SetLessQuantityToPackingList' \ - + ' Tic Tic CheckPackingListDiverged AcceptPackingList Tic Tic Tic' \ - + ' CheckLessQuantityInSimulation' - sequence_list.addSequenceString(sequence_string) - - # Simple sequence including variated resource with only some tic when it is required, - # We create a sales order, confirm and then make sure the corresponding - # packing list is made - # ... OK - sequence_string = 'AddVariatedSalesOrder PlanSalesOrder OrderSalesOrder' \ - + ' ConfirmSalesOrder Tic Tic Tic Tic CheckConfirmOrder' \ - + ' Tic Tic CheckActivateRequirementList' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we confirm an order, the corresponding packing list is automatically - # created, we then check if the packing list is converged. - # ... OK - sequence_string = 'AddSalesOrder Tic Tic ConfirmSalesOrder Tic Tic CheckConfirmOrder Tic' \ - + ' Tic Tic Tic Tic CheckActivateRequirementList Tic CheckPackingListConverged' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we confirm an order, the corresponding packing list is automatically - # created, then we add new lines to the packing list by hand, we accept, we then check - # if the packing list is converged. - # ... FAILS - sequence_string = 'AddSalesOrder Tic Tic ConfirmSalesOrder Tic Tic CheckConfirmOrder Tic' \ - + ' Tic Tic Tic Tic CheckActivateRequirementList Tic CheckPackingListConverged' \ - + ' AddLinesToSalesPackingList Tic Tic Tic Tic Tic CheckPackingListDiverged' - #sequence_list.addSequenceString(sequence_string) - - # Sequence where we confirm an order, the corresponding packing list is automatically - # created, then we rename the color of the variated resource, everything should take - # into account the new name - # ... OK - sequence_string = 'AddVariatedSalesOrder PlanSalesOrder OrderSalesOrder' \ - + ' ConfirmSalesOrder Tic Tic Tic Tic CheckConfirmOrder' \ - + ' Tic Tic CheckActivateRequirementList' \ - + ' Tic Tic ModifyVariationId Tic Tic CheckConfirmOrder' \ - + ' Tic Tic CheckActivateRequirementList' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we create an order, then the color is renamed, then we confirm - # and we look if everyhing is going fine on the simulation and that the - # packing list is created correctly - # ... OK - sequence_string = 'AddVariatedSalesOrder Tic Tic ModifyVariationId Tic Tic Tic' \ - + ' ConfirmSalesOrder Tic Tic CheckConfirmOrder Tic' \ - + ' Tic Tic Tic Tic CheckActivateRequirementList Tic' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we confirm an order, the corresponding packing list is automatically - # created, then we wants to only send one part of the packing list and finally - # we split and defer the packing list - # ... Fails but was OK - sequence_string = 'AddVariatedSalesOrder PlanSalesOrder OrderSalesOrder' \ - + ' ConfirmSalesOrder Tic Tic Tic Tic CheckConfirmOrder' \ - + ' CheckActivateRequirementList Tic Tic Tic' \ - + ' UserGetReadyPackingList Tic Tic UserSetReadyPackingList Tic Tic' \ - + ' UserStartPackingList Tic Tic Tic Tic' \ - + ' AcceptDeliveryPackingList Tic CheckPackingListConverged Tic' \ - + ' SetLessQuantityToPackingList Tic CheckPackingListDiverged Tic' \ - + ' SplitAndDeferPackingList Tic Tic Tic' \ - + ' CheckSplittedAndDefferedPackingList' - sequence_list.addSequenceString(sequence_string) - - # Sequence where we build a Production Order, we confirm this production order, then - # we see if there is an the corresponding packing list is built - # ... OK - sequence_string = 'AddProductionOrder Tic PlanProductionOrder Tic OrderProductionOrder Tic Tic' \ - + ' ConfirmProductionOrder Tic Tic Tic CheckConfirmOrder Tic Tic' \ - + ' CheckActivateRequirementList Tic Tic' - sequence_list.addSequenceString(sequence_string) - - - # Sequence where we build a Production Order, we confirm this production order, then - # we have many packing list, we change the destination of one of the packing_list, - # we must be sure that this change is taken into account into the simulation - # ... ??? may be ok - sequence_string = 'AddProductionOrder Tic PlanProductionOrder Tic OrderProductionOrder Tic Tic' \ - + ' ConfirmProductionOrder Tic Tic Tic CheckConfirmOrder Tic Tic' \ - + ' CheckActivateRequirementList Tic Tic ModifyPackingListDestination Tic Tic' \ - + ' Tic Tic Tic RedirectPackingList Tic Tic Tic CheckConfirmOrder Tic CheckActivateRequirementList' - #sequence_list.addSequenceString(sequence_string) - - # Sequence where we build a Production Order, we plan this production order, then - # we have many packing list, we change the resource of one of them, - # we must be sure that this change is taken into account into the simulation, - # ie a new line with the previous resource should be automatically created - # ... OK - sequence_string = 'AddProductionOrder Tic PlanProductionOrder Tic OrderProductionOrder Tic Tic' \ - + ' ConfirmProductionOrder Tic Tic Tic CheckConfirmOrder Tic Tic' \ - + ' CheckActivateRequirementList Tic Tic ModifyPackingListResource Tic Tic' \ - + ' Tic Tic Tic Tic Tic CheckConfirmOrder Tic CheckActivateRequirementList' - sequence_list.addSequenceString(sequence_string) - - # Now add a non defined sequence -# sequence = Sequence() -# sequence.addStep('AddSalesOrder') -# sequence.addStep('Tic',required=0,max_replay=3) -# sequence.addStep('PlanSalesOrder',required=0) -# sequence.addStep('Tic',required=0,max_replay=3) -# sequence.addStep('OrderSalesOrder',required=0) -# sequence.addStep('Tic',required=0,max_replay=3) -# sequence.addStep('ConfirmSalesOrder') -# sequence.addStep('Tic',required=0,max_replay=3) -# sequence.addStep('ModifySalesOrder',required=0) -# sequence.addStep('Tic',required=0,max_replay=3) -# sequence.addStep('CheckConfirmOrder') -# sequence.addStep('ActivateRequirementList') -# sequence.addStep('Tic',required=0,max_replay=5) -# sequence_list.addSequence(sequence) - # Finally play all sequences - sequence_list.play(self) - - - -if __name__ == '__main__': - framework() -else: - import unittest - def test_suite(): - suite = unittest.TestSuite() - suite.addTest(unittest.makeSuite(TestOrder)) - return suite -