Commit 7d45a824 authored by Fabien Morin's avatar Fabien Morin

- remove editable columns of PaySheetTransaction_view listbox because they were

not used
- in the PaySheetTransaction_viewPreview listbox, use a script to return the
editable columns, that's permit to have dinamic columns depending on the
tax_category's used.
- in PaySheetTransaction_createAllPaySheetLineList we now use just one method
to generate all Pay Sheet Lines : createPaySheetLineList.
- enhance PaySheetTransaction_defaultCalculationScript to now get
model_slice_min/max values from the cell
- improve PaySheetTransaction_getEditableObjectLineList script
- change PaySheetTransaction_getListBoxColumnList method to be able to return
editable column list

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@18261 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 2053492d
...@@ -204,7 +204,7 @@ ...@@ -204,7 +204,7 @@
</item> </item>
<item> <item>
<key> <string>display_width</string> </key> <key> <string>display_width</string> </key>
<value> <int>20</int> </value> <value> <int>5</int> </value>
</item> </item>
<item> <item>
<key> <string>editable</string> </key> <key> <string>editable</string> </key>
......
...@@ -70,19 +70,17 @@ ...@@ -70,19 +70,17 @@
paysheet are called here\n paysheet are called here\n
\'\'\'\n \'\'\'\n
import pprint\n import pprint\n
#context.log(\'listbox :%s\' % (pprint.pformat(listbox)))\n
\n \n
# Delete all objects in the paysheet\n # Delete all objects in the paysheet\n
id_list = []\n id_list = []\n
for paysheet_item in context.objectValues(portal_type= \\\n for paysheet_item in context.objectValues(portal_type= \\\n
[\'Pay Sheet Transaction Line\', \'Pay Sheet Line\']):\n [\'Pay Sheet Transaction Line\', \'Pay Sheet Line\']):\n
# Delete lines which became outdated and keep the sub-objects\n # Delete lines which now became outdated and keep the sub-objects\n
id_list.append(paysheet_item.getId())\n id_list.append(paysheet_item.getId())\n
context.manage_delObjects(id_list)\n context.manage_delObjects(id_list)\n
\n \n
# create Pay Sheet Lines\n # create Pay Sheet Lines\n
context.createEditablePaySheetLineList(listbox, **kw)\n context.createPaySheetLineList(listbox=listbox)\n
context.createNotEditablePaySheetLineList()\n
\n \n
if not(kw.has_key(\'skip_redirect\') and kw[\'skip_redirect\'] == True):\n if not(kw.has_key(\'skip_redirect\') and kw[\'skip_redirect\'] == True):\n
# Return to pay sheet default view\n # Return to pay sheet default view\n
...@@ -139,7 +137,6 @@ if not(kw.has_key(\'skip_redirect\') and kw[\'skip_redirect\'] == True):\n ...@@ -139,7 +137,6 @@ if not(kw.has_key(\'skip_redirect\') and kw[\'skip_redirect\'] == True):\n
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
<string>paysheet_item</string> <string>paysheet_item</string>
<string>_apply_</string>
<string>_getitem_</string> <string>_getitem_</string>
<string>True</string> <string>True</string>
<string>ZTUtils</string> <string>ZTUtils</string>
......
...@@ -85,6 +85,28 @@ if base_amount_dict:\n ...@@ -85,6 +85,28 @@ if base_amount_dict:\n
quantity = cell.getQuantity() or 0\n quantity = cell.getQuantity() or 0\n
price = cell.getPrice() or 0\n price = cell.getPrice() or 0\n
\n \n
\n
salary_range_list = cell.getVariationCategoryList(\\\n
base_category_list=\'salary_range\')\n
if len(salary_range_list):\n
salary_range = salary_range_list[0] # a slice can have only one salary_range\n
# category\n
else:\n
salary_range = None\n
\n
model_slice_min = 0\n
model_slice_max = 0\n
if salary_range:\n
model = context.getSpecialiseValue()\n
cell = model.getCell(salary_range)\n
if cell is None:\n
context.log("Warning ! Can\'t find cell corresponding to : %s" %\n
salary_range)\n
else:\n
model_slice_min = cell.getQuantityRangeMin()\n
model_slice_max = cell.getQuantityRangeMax()\n
\n
\n
if not quantity and base_application-model_slice_min>0:\n if not quantity and base_application-model_slice_min>0:\n
if base_application <= model_slice_max:\n if base_application <= model_slice_max:\n
quantity = base_application-model_slice_min\n quantity = base_application-model_slice_min\n
...@@ -118,7 +140,7 @@ return {\'quantity\':quantity, \'price\':price}\n ...@@ -118,7 +140,7 @@ return {\'quantity\':quantity, \'price\':price}\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>base_amount_dict, model_slice_min, model_slice_max, cell</string> </value> <value> <string>base_amount_dict, cell</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -138,15 +160,13 @@ return {\'quantity\':quantity, \'price\':price}\n ...@@ -138,15 +160,13 @@ return {\'quantity\':quantity, \'price\':price}\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>4</int> </value> <value> <int>2</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
<value> <value>
<tuple> <tuple>
<string>base_amount_dict</string> <string>base_amount_dict</string>
<string>model_slice_min</string>
<string>model_slice_max</string>
<string>cell</string> <string>cell</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
...@@ -162,6 +182,12 @@ return {\'quantity\':quantity, \'price\':price}\n ...@@ -162,6 +182,12 @@ return {\'quantity\':quantity, \'price\':price}\n
<string>_inplacevar_</string> <string>_inplacevar_</string>
<string>quantity</string> <string>quantity</string>
<string>price</string> <string>price</string>
<string>salary_range_list</string>
<string>len</string>
<string>salary_range</string>
<string>model_slice_min</string>
<string>model_slice_max</string>
<string>model</string>
</tuple> </tuple>
</value> </value>
</item> </item>
......
...@@ -72,37 +72,58 @@ ...@@ -72,37 +72,58 @@
In base cases, only \'Monthly Labour\' model line is editable (without any\n In base cases, only \'Monthly Labour\' model line is editable (without any\n
tax_category or slice)\n tax_category or slice)\n
"""\n """\n
from Products.ERP5Type.Utils import cartesianProduct\n
\n \n
# Get all the editable model lines\n from Products.ERP5Type.Utils import cartesianProduct\n
model = context.getSpecialiseValue()\n import pprint\n
if not model:\n from Products.ERP5Type.Message import Message\n
context.log("PaySheetTransaction_getEditables WARNING! no model found")\n N_ = lambda msg, **kw: Message(\'erp5_ui\', msg, **kw)\n
return None\n
\n \n
# get model lines\n model = context.getSpecialiseValue(0)\n
model_line_list = model.contentValues(portal_type=\'Pay Sheet Model Line\')\n model_line_list = model.contentValues(portal_type=\'Pay Sheet Model Line\')\n
\n # remove editable model line\n
# remove not editable model line\n model_line_list = [x.getObject() for x in model_line_list \\\n
model_line_editable_list = [x.getObject() for x in model_line_list \\\n
if x.getObject().isEditable()]\n if x.getObject().isEditable()]\n
\n \n
line_list = []\n line_list = []\n
for model_line in model_line_editable_list:\n object_dict_list = []\n
id = 0\n
\n \n
for model_line in model_line_list:\n
base_category_list = model_line.getVariationBaseCategoryList()\n base_category_list = model_line.getVariationBaseCategoryList()\n
base_application_list = model_line.getBaseAmountTitleList()\n
translated_base_application_list = [str(N_(x)) for x in base_application_list]\n
base_application_list = \', \'.join(translated_base_application_list)\n
list_of_list = []\n list_of_list = []\n
for base_category in base_category_list:\n for base_category in base_category_list:\n
list_of_list.append(model_line.getVariationCategoryList(base_category_list=\\\n list = model_line.getVariationCategoryList(base_category_list=\\\n
base_category))\n base_category)\n
list_of_list.append(list)\n
cartesian_product = cartesianProduct(list_of_list)\n cartesian_product = cartesianProduct(list_of_list)\n
\n \n
service = model_line.getResourceValue()\n previous_share = None\n
\n \n
object_dict = {}\n
for tuple in cartesian_product:\n for tuple in cartesian_product:\n
share_dict = {}\n
cell = model_line.getCell(*tuple)\n cell = model_line.getCell(*tuple)\n
if cell is None:\n if cell is None:\n
continue\n continue\n
\n
quantity = cell.getQuantity()\n
base = quantity\n
\n
base_list = [str(N_(base_application)) for base_application in \\\n
model_line.getBaseAmountTitleList()]\n
base_name = \'+\'.join(base_list)\n
\n
payroll_service = model_line.getResourceValue()\n
base_participation_list = payroll_service.getBaseAmountList()\n
\n
price = cell.getPrice()\n
if price is None:\n
price = 1\n
share_dict[cell.getTaxCategory()+\'_price\'] = price\n
share_dict[cell.getTaxCategory()+\'_quantity\'] = quantity\n
\n \n
tuple_dict = {}\n tuple_dict = {}\n
for item in tuple:\n for item in tuple:\n
...@@ -110,22 +131,86 @@ for model_line in model_line_editable_list:\n ...@@ -110,22 +131,86 @@ for model_line in model_line_editable_list:\n
tuple_dict[item.split(\'/\')[0]]=context.portal_categories.restrictedTraverse(item).getTitle()\n tuple_dict[item.split(\'/\')[0]]=context.portal_categories.restrictedTraverse(item).getTitle()\n
tuple_dict[item.split(\'/\')[0]+\'_relative_url\']=item\n tuple_dict[item.split(\'/\')[0]+\'_relative_url\']=item\n
\n \n
params={\\\n # we want to display as lines as a paysheet line as slices\n
\'service_title\':service.getTitleOrId(),\n # this is easier to read\n
\'quantity\': cell.getQuantity(),\n \n
\'price\' : cell.getPrice(),\n salary_range = cell.getSalaryRange()\n
\'model_line\':model_line.getRelativeUrl(),\n # if there is no slice on a contribution, the dict key will be \'no_slice\'\n
\'service_id\':service.getId(),\n # it could be just one \'no_slice\' because a contribution have slice or not\n
\'description\':model_line.getDescription(),\n if salary_range is None:\n
\'base_participation_list\':service.getBaseAmountTitleList(),\n salary_range = \'no_slice\'\n
\'base_participation_string\':\', \'.join(service.getBaseAmountTitleList()),\n \n
\'base_application_list\':model_line.getBaseAmountTitleList(),\n # check that another share on the same slice have not been already add\n
\'base_application_string\':\', \'.join(model_line.getBaseAmountTitleList()) }\n if not object_dict.has_key(salary_range):\n
salary_range_title = None\n
salary_range_relative_url = None\n
if tuple_dict.has_key(\'salary_range\'):\n
salary_range_title = tuple_dict[\'salary_range\']\n
salary_range_relative_url = tuple_dict[\'salary_range_relative_url\']\n
new_uid = "new_%s" % id\n
id += 1\n
object_dict[salary_range]={\n
\'uid\':new_uid,\n
\'salary_range_title\':salary_range_title,\n
\'salary_range_relative_url\':salary_range_relative_url,\n
\'base_name\':base_name,\n
\'base\':base,\n
\'model_line\': model_line.getRelativeUrl(),\n
\'base_participation_list\':base_participation_list,\n
\'base_application_list\': base_application_list,\n
\'service_id\':payroll_service.getId()}\n
object_dict[salary_range].update(share_dict)\n
\n
# if the slice already exists, just update the share\n
else:\n
object_dict[salary_range].update(share_dict)\n
\n
object_dict_list.append(object_dict)\n
\n
for object_key in model_line.getSalaryRangeList():\n
line_list.append(model_line.asContext(**object_dict[object_key]))\n
if object_dict.has_key(\'no_slice\'):\n
line_list.append(model_line.asContext(**object_dict[\'no_slice\']))\n
\n
\n
if batch_mode:\n
object_dict_list = [x.values()[0] for x in object_dict_list]\n
return object_dict_list\n
\n \n
params.update(tuple_dict)\n # sort results\n
\n \n
line_list.append(cell.asContext(**params))\n def sortByTitleAscending(x, y):\n
return cmp(x.getTitle(), y.getTitle())\n
\n \n
def sortByTitleDescending(x, y):\n
return cmp(y.getTitle(), x.getTitle())\n
\n
def sortByIntIndexAscending(x, y):\n
return cmp(x.getIntIndex(), y.getIntIndex())\n
\n
def sortByIntIndexDescending(x, y):\n
return cmp(y.getIntIndex(), x.getIntIndex())\n
\n
sortByDefaultSortMethod = sortByIntIndexAscending\n
\n
if kw.has_key(\'sort_on\'):\n
list = kw[\'sort_on\']\n
if list[0][0] == \'title\' and list[0][1]==\'ascending\':\n
line_list.sort(sortByTitleAscending)\n
elif list[0][0] == \'title\' and list[0][1]==\'descending\':\n
line_list.sort(sortByTitleDescending)\n
elif list[0][0] == \'int_index\' and list[0][1]==\'ascending\':\n
line_list.sort(sortByIntIndexAscending)\n
elif list[0][0] == \'int_index\' and list[0][1]==\'descending\':\n
line_list.sort(sortByIntIndexDescending)\n
else:\n
line_list.sort(sortByDefaultSortMethod)\n
else:\n
line_list.sort(sortByDefaultSortMethod)\n
\n
\n
\n
#return pprint.pformat(line_list)\n
return line_list\n return line_list\n
</string> </value> </string> </value>
</item> </item>
...@@ -149,7 +234,7 @@ return line_list\n ...@@ -149,7 +234,7 @@ return line_list\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string>**kw</string> </value> <value> <string>batch_mode=0, **kw</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -169,40 +254,70 @@ return line_list\n ...@@ -169,40 +254,70 @@ return line_list\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>0</int> </value> <value> <int>1</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
<value> <value>
<tuple> <tuple>
<string>batch_mode</string>
<string>kw</string> <string>kw</string>
<string>Products.ERP5Type.Utils</string> <string>Products.ERP5Type.Utils</string>
<string>cartesianProduct</string> <string>cartesianProduct</string>
<string>pprint</string>
<string>Products.ERP5Type.Message</string>
<string>Message</string>
<string>N_</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
<string>model</string> <string>model</string>
<string>None</string>
<string>model_line_list</string> <string>model_line_list</string>
<string>append</string> <string>append</string>
<string>$append0</string> <string>$append0</string>
<string>_getiter_</string> <string>_getiter_</string>
<string>x</string> <string>x</string>
<string>model_line_editable_list</string>
<string>line_list</string> <string>line_list</string>
<string>object_dict_list</string>
<string>id</string>
<string>model_line</string> <string>model_line</string>
<string>base_category_list</string> <string>base_category_list</string>
<string>base_application_list</string>
<string>str</string>
<string>translated_base_application_list</string>
<string>list_of_list</string> <string>list_of_list</string>
<string>base_category</string> <string>base_category</string>
<string>list</string>
<string>cartesian_product</string> <string>cartesian_product</string>
<string>service</string> <string>None</string>
<string>previous_share</string>
<string>object_dict</string>
<string>tuple</string> <string>tuple</string>
<string>share_dict</string>
<string>_apply_</string> <string>_apply_</string>
<string>cell</string> <string>cell</string>
<string>quantity</string>
<string>base</string>
<string>base_application</string>
<string>base_list</string>
<string>base_name</string>
<string>payroll_service</string>
<string>base_participation_list</string>
<string>price</string>
<string>_write_</string>
<string>tuple_dict</string> <string>tuple_dict</string>
<string>item</string> <string>item</string>
<string>_write_</string>
<string>_getitem_</string> <string>_getitem_</string>
<string>params</string> <string>salary_range</string>
<string>salary_range_title</string>
<string>salary_range_relative_url</string>
<string>new_uid</string>
<string>_inplacevar_</string>
<string>object_key</string>
<string>sortByTitleAscending</string>
<string>sortByTitleDescending</string>
<string>sortByIntIndexAscending</string>
<string>sortByIntIndexDescending</string>
<string>sortByDefaultSortMethod</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -214,7 +329,9 @@ return line_list\n ...@@ -214,7 +329,9 @@ return line_list\n
<item> <item>
<key> <string>func_defaults</string> </key> <key> <string>func_defaults</string> </key>
<value> <value>
<none/> <tuple>
<int>0</int>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
...@@ -66,30 +66,37 @@ ...@@ -66,30 +66,37 @@
<item> <item>
<key> <string>_body</string> </key> <key> <string>_body</string> </key>
<value> <string>\'\'\'\n <value> <string>\'\'\'\n
this small script a list of the categories used in the paysheet lines\n this small script return a list of the categories used in the paysheet lines\n
\n
parameters :\n
- editable : if editable = 1, the columns returned are editables columns\n
else, all the columns are returned\n
\'\'\'\n \'\'\'\n
\n \n
column_list = []\n column_list = []\n
\n \n
static_columns = [\n not_editable_columns = [(\'int_index\', \'Sort Index\'),\n
(\'int_index\', \'Sort Index\'),\n
(\'title\', \'Title\'),\n (\'title\', \'Title\'),\n
(\'source_section_title\', \'Source\'),\n (\'source_section_title\', \'Source\'),\n
(\'slice\', \'Slice\'),\n (\'slice\', \'Slice\'),\n
(\'base\', \'Base\'),\n (\'base\', \'Base\'),]\n
]\n
\n \n
column_list.extend(static_columns)\n if not editable:\n
column_list.extend(not_editable_columns)\n
\n \n
for model_line in context.contentValues(portal_type=\'Pay Sheet Line\'):\n for model_line in context.contentValues(portal_type=\'Pay Sheet Line\'):\n
for tax_category in model_line.getTaxCategoryValueList():\n for tax_category in model_line.getTaxCategoryValueList():\n
rate = (tax_category.getRelativeUrl().replace(\'tax_category/\', \'\', 1)+\\\n price = (tax_category.getId()+\'_rate\', tax_category.getTitle()+\' Rate\')\n
\'_rate\', tax_category.getTitle()+\' Rate\')\n quantity = (tax_category.getId()+\'_amount\', \n
amount = (tax_category.getRelativeUrl().replace(\'tax_category/\', \'\', 1)+\\\n tax_category.getTitle()+\' Amount\')\n
\'_amount\', tax_category.getTitle()+\' Amount\')\n if price not in column_list:\n
if rate not in column_list:\n column_list.append(price)\n
column_list.append(rate)\n column_list.append(quantity)\n
column_list.append(amount)\n \n
else:\n
pass\n
# add here the editable column you want to use\n
# currently, it\'s not required to use editable columns\n
\n \n
return column_list\n return column_list\n
</string> </value> </string> </value>
...@@ -108,7 +115,7 @@ return column_list\n ...@@ -108,7 +115,7 @@ return column_list\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string></string> </value> <value> <string>editable=0</string> </value>
</item> </item>
<item> <item>
<key> <string>errors</string> </key> <key> <string>errors</string> </key>
...@@ -128,21 +135,22 @@ return column_list\n ...@@ -128,21 +135,22 @@ return column_list\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>0</int> </value> <value> <int>1</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
<value> <value>
<tuple> <tuple>
<string>editable</string>
<string>column_list</string> <string>column_list</string>
<string>static_columns</string> <string>not_editable_columns</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>_getiter_</string> <string>_getiter_</string>
<string>context</string> <string>context</string>
<string>model_line</string> <string>model_line</string>
<string>tax_category</string> <string>tax_category</string>
<string>rate</string> <string>price</string>
<string>amount</string> <string>quantity</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -154,7 +162,9 @@ return column_list\n ...@@ -154,7 +162,9 @@ return column_list\n
<item> <item>
<key> <string>func_defaults</string> </key> <key> <string>func_defaults</string> </key>
<value> <value>
<none/> <tuple>
<int>0</int>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Python_magic</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_body</string> </key>
<value> <string>\'\'\'\n
this small script a list of the categories used in the paysheet lines\n
\n
parameters :\n
- editable : if editable = 1, the columns returned are editables columns\n
else, all the columns are returned\n
\'\'\'\n
\n
column_list = []\n
\n
not_editable_columns = [ (\'title\', \'Title\'),\n
(\'salary_range_title\', \'Slice\'),]\n
\n
if not editable:\n
column_list.extend(not_editable_columns)\n
\n
model = context.getSpecialiseValue()\n
model_line_list = model.contentValues(portal_type=\'Pay Sheet Model Line\')\n
model_line_list = [line for line in model_line_list if line.isEditable()]\n
\n
for model_line in model_line_list:\n
for tax_category in model_line.getTaxCategoryValueList():\n
price = (tax_category.getId()+\'_price\', tax_category.getTitle()+\' Rate\')\n
quantity = (tax_category.getId()+\'_quantity\', \n
tax_category.getTitle()+\' Amount\')\n
if price not in column_list:\n
column_list.append(price)\n
column_list.append(quantity)\n
\n
\n
# hidden columns are put at the end of the list, it\'s less ugly\n
hidden_columns = [(\'model_line\', \' \'),\n
(\'salary_range_relative_url\', \' \'),]\n
\n
column_list.extend(hidden_columns)\n
return column_list\n
</string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_filepath</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>editable=0</string> </value>
</item>
<item>
<key> <string>errors</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>func_code</string> </key>
<value>
<object>
<klass>
<global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>co_argcount</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>editable</string>
<string>column_list</string>
<string>not_editable_columns</string>
<string>_getattr_</string>
<string>context</string>
<string>model</string>
<string>model_line_list</string>
<string>append</string>
<string>$append0</string>
<string>_getiter_</string>
<string>line</string>
<string>model_line</string>
<string>tax_category</string>
<string>price</string>
<string>quantity</string>
<string>hidden_columns</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<tuple>
<int>0</int>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>PaySheetTransaction_getListBoxPreviewColumnList</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -92,8 +92,6 @@ for paysheet_line in paysheet_line_list:\n ...@@ -92,8 +92,6 @@ for paysheet_line in paysheet_line_list:\n
base_category_list = paysheet_line.getVariationBaseCategoryList()\n base_category_list = paysheet_line.getVariationBaseCategoryList()\n
base_application_list = paysheet_line.getBaseAmountTitleList()\n base_application_list = paysheet_line.getBaseAmountTitleList()\n
translated_base_application_list = [str(N_(x)) for x in base_application_list]\n translated_base_application_list = [str(N_(x)) for x in base_application_list]\n
context.log(\'translated_base_application_list :%s\' %\n
translated_base_application_list)\n
base_application_list = \', \'.join(translated_base_application_list)\n base_application_list = \', \'.join(translated_base_application_list)\n
list_of_list = []\n list_of_list = []\n
for base_category in base_category_list:\n for base_category in base_category_list:\n
......
...@@ -72,6 +72,12 @@ ...@@ -72,6 +72,12 @@
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value> </value>
</item> </item>
<item>
<key> <string>editable_columns</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>field_id</string> </key> <key> <string>field_id</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -80,12 +86,6 @@ ...@@ -80,12 +86,6 @@
<key> <string>form_id</string> </key> <key> <string>form_id</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>lines</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>list_method</string> </key> <key> <string>list_method</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -98,6 +98,10 @@ ...@@ -98,6 +98,10 @@
<key> <string>selection_name</string> </key> <key> <string>selection_name</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>sort</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>target</string> </key> <key> <string>target</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -159,28 +163,7 @@ ...@@ -159,28 +163,7 @@
<item> <item>
<key> <string>editable_columns</string> </key> <key> <string>editable_columns</string> </key>
<value> <value>
<list> <list/>
<tuple>
<string>base</string>
<string>Base</string>
</tuple>
<tuple>
<string>employer_share_amount</string>
<string>Employer Share Amount</string>
</tuple>
<tuple>
<string>employer_share_rate</string>
<string>Employer Share Rate</string>
</tuple>
<tuple>
<string>employee_share_amount</string>
<string>Employee Share Amount</string>
</tuple>
<tuple>
<string>employee_share_rate</string>
<string>Employee Share Rate</string>
</tuple>
</list>
</value> </value>
</item> </item>
<item> <item>
...@@ -280,7 +263,7 @@ ...@@ -280,7 +263,7 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string>python: here.PaySheetTransaction_getListBoxColumnList()</string> </value> <value> <string>python: context.PaySheetTransaction_getListBoxColumnList()</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
...@@ -296,7 +279,7 @@ ...@@ -296,7 +279,7 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string>python: preferences.getPreference(\'preferred_listbox_view_mode_line_count\', 15)</string> </value> <value> <string>python: context.PaySheetTransaction_getListBoxColumnList(editable=1)</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
......
...@@ -105,19 +105,25 @@ ...@@ -105,19 +105,25 @@
<string>listbox_base_application_string</string> <string>listbox_base_application_string</string>
<string>listbox_base_participation_string</string> <string>listbox_base_participation_string</string>
<string>listbox_service_id</string> <string>listbox_service_id</string>
<string>listbox_salary_range</string>
<string>listbox_quantity</string> <string>listbox_quantity</string>
<string>listbox_price</string> <string>listbox_price</string>
<string>listbox_tax_category</string> <string>listbox_tax_category</string>
<string>listbox_tax_category_relative_url</string> <string>listbox_tax_category_relative_url</string>
<string>listbox_salary_range_relative_url</string> <string>listbox_salary_range_relative_url</string>
<string>listbox_id</string>
<string>listbox_employee_share_price</string>
<string>listbox_employer_share_price</string>
<string>listbox_employee_share_quantity</string>
<string>listbox_employer_share_quantity</string>
</list> </list>
</value> </value>
</item> </item>
<item> <item>
<key> <string>left</string> </key> <key> <string>left</string> </key>
<value> <value>
<list/> <list>
<string>listbox_salary_range</string>
</list>
</value> </value>
</item> </item>
<item> <item>
...@@ -143,7 +149,7 @@ ...@@ -143,7 +149,7 @@
</item> </item>
<item> <item>
<key> <string>pt</string> </key> <key> <string>pt</string> </key>
<value> <string>form_view_dialog</string> </value> <value> <string>form_dialog</string> </value>
</item> </item>
<item> <item>
<key> <string>row_length</string> </key> <key> <string>row_length</string> </key>
......
...@@ -3,12 +3,27 @@ ...@@ -3,12 +3,27 @@
<record id="1" aka="AAAAAAAAAAE="> <record id="1" aka="AAAAAAAAAAE=">
<pickle> <pickle>
<tuple> <tuple>
<global name="ListBox" module="Products.ERP5Form.ListBox"/> <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/> <tuple/>
</tuple> </tuple>
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>title</string>
<string>hidden</string>
<string>columns</string>
<string>all_columns</string>
<string>sort</string>
<string>list_method</string>
<string>selection_name</string>
<string>editable_columns</string>
</list>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>listbox</string> </value> <value> <string>listbox</string> </value>
...@@ -29,135 +44,15 @@ ...@@ -29,135 +44,15 @@
<value> <value>
<dictionary> <dictionary>
<item> <item>
<key> <string>all_columns</string> </key> <key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>all_editable_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>domain_root_list</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>domain_tree</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_validator</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>global_attributes</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>hidden</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>lines</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>list_action</string> </key> <key> <string>form_id</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>list_method</string> </key> <key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>meta_types</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>portal_types</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>report_root_list</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>report_tree</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>search</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>search_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>select</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>selection_name</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>sort</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>sort_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>stat_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>stat_method</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>url_columns</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -171,116 +66,36 @@ ...@@ -171,116 +66,36 @@
<key> <string>all_columns</string> </key> <key> <string>all_columns</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>all_editable_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>columns</string> </key> <key> <string>columns</string> </key>
<value> <string></string> </value> <value>
</item> <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
<item> </value>
<key> <string>count_method</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>domain_root_list</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>domain_tree</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>editable_columns</string> </key> <key> <string>editable_columns</string> </key>
<value> <string></string> </value> <value>
</item> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
<item> </value>
<key> <string>enabled</string> </key>
<value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>external_validator</string> </key> <key> <string>field_id</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>global_attributes</string> </key> <key> <string>form_id</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>hidden</string> </key> <key> <string>hidden</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
<item>
<key> <string>lines</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>list_action</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>list_method</string> </key> <key> <string>list_method</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>meta_types</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>page_template</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>portal_types</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>report_root_list</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>report_tree</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>search</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>search_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>select</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>selection_name</string> </key> <key> <string>selection_name</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
...@@ -290,25 +105,13 @@ ...@@ -290,25 +105,13 @@
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>sort_columns</string> </key> <key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>stat_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>stat_method</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item>
<key> <string>url_columns</string> </key>
<value> <string></string> </value>
</item>
</dictionary> </dictionary>
</value> </value>
</item> </item>
...@@ -323,37 +126,15 @@ ...@@ -323,37 +126,15 @@
<item> <item>
<key> <string>all_columns</string> </key> <key> <string>all_columns</string> </key>
<value> <value>
<list> <list/>
<tuple>
<string>base_application_string</string>
<string>Base Application</string>
</tuple>
</list>
</value> </value>
</item> </item>
<item> <item>
<key> <string>all_editable_columns</string> </key> <key> <string>all_editable_columns</string> </key>
<value> <value>
<list> <list/>
<tuple>
<string>base</string>
<string>Base Value</string>
</tuple>
<tuple>
<string>employer_share_rate</string>
<string>Employer Share Rate (%)</string>
</tuple>
<tuple>
<string>employee_share_rate</string>
<string>Employee Share Rate (%)</string>
</tuple>
</list>
</value> </value>
</item> </item>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item> <item>
<key> <string>columns</string> </key> <key> <string>columns</string> </key>
<value> <value>
...@@ -402,159 +183,60 @@ ...@@ -402,159 +183,60 @@
<string>salary_range_relative_url</string> <string>salary_range_relative_url</string>
<string></string> <string></string>
</tuple> </tuple>
<tuple>
<string>model_line</string>
<string>Model Line</string>
</tuple>
</list> </list>
</value> </value>
</item> </item>
<item> <item>
<key> <string>count_method</string> </key> <key> <string>editable_columns</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default_params</string> </key>
<value> <value>
<list/> <list/>
</value> </value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>editable_permission</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>domain_root_list</string> </key>
<value> <value>
<list/> <list/>
</value> </value>
</item> </item>
<item> <item>
<key> <string>domain_tree</string> </key> <key> <string>editable_role</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>editable_columns</string> </key>
<value> <value>
<list> <list/>
<tuple>
<string>quantity</string>
<string>Amount</string>
</tuple>
<tuple>
<string>price</string>
<string>Percent</string>
</tuple>
<tuple>
<string>tax_category</string>
<string>Tax Category</string>
</tuple>
<tuple>
<string>description</string>
<string>Description</string>
</tuple>
<tuple>
<string>slice</string>
<string>Slice</string>
</tuple>
<tuple>
<string>model_line</string>
<string></string>
</tuple>
<tuple>
<string>tax_category_relative_url</string>
<string></string>
</tuple>
<tuple>
<string>salary_range_relative_url</string>
<string></string>
</tuple>
</list>
</value> </value>
</item> </item>
<item> <item>
<key> <string>enabled</string> </key> <key> <string>field_id</string> </key>
<value> <int>1</int> </value> <value> <string>my_view_mode_listbox</string> </value>
</item> </item>
<item> <item>
<key> <string>external_validator</string> </key> <key> <string>form_id</string> </key>
<value> <string></string> </value> <value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>global_attributes</string> </key>
<value>
<list/>
</value>
</item> </item>
<item> <item>
<key> <string>hidden</string> </key> <key> <string>hidden</string> </key>
<value> <int>0</int> </value> <value> <int>0</int> </value>
</item> </item>
<item>
<key> <string>lines</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>list_action</string> </key>
<value> <string>Folder_viewContentList</string> </value>
</item>
<item> <item>
<key> <string>list_method</string> </key> <key> <string>list_method</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
<item>
<key> <string>meta_types</string> </key>
<value>
<list/>
</value> </value>
</item> </item>
<item> <item>
<key> <string>page_template</string> </key> <key> <string>not_viewable</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>portal_types</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>report_root_list</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>report_tree</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>search</string> </key>
<value> <int>0</int> </value> <value> <int>0</int> </value>
</item> </item>
<item> <item>
<key> <string>search_columns</string> </key> <key> <string>read_only</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>select</string> </key>
<value> <int>0</int> </value> <value> <int>0</int> </value>
</item> </item>
<item> <item>
<key> <string>selection_name</string> </key> <key> <string>selection_name</string> </key>
<value> <string>pay_sheet_transaction_calcul_preview</string> </value> <value> <string>pay_sheet_transaction_calcul_preview_list_selection</string> </value>
</item> </item>
<item> <item>
<key> <string>sort</string> </key> <key> <string>sort</string> </key>
...@@ -572,27 +254,21 @@ ...@@ -572,27 +254,21 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>sort_columns</string> </key> <key> <string>target</string> </key>
<value> <value> <string>Click to edit the target</string> </value>
<list/> </item>
</value> <item>
<key> <string>title</string> </key>
<value> <string>Pay Sheet Lines</string> </value>
</item> </item>
<item> <item>
<key> <string>stat_columns</string> </key> <key> <string>viewable_permission</string> </key>
<value> <value>
<list/> <list/>
</value> </value>
</item> </item>
<item> <item>
<key> <string>stat_method</string> </key> <key> <string>viewable_role</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Preview</string> </value>
</item>
<item>
<key> <string>url_columns</string> </key>
<value> <value>
<list/> <list/>
</value> </value>
...@@ -614,12 +290,44 @@ ...@@ -614,12 +290,44 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string>python: context.PaySheetTransaction_getEditableObjectLineList()==[]</string> </value> <value> <string>python: context.PaySheetTransaction_getListBoxPreviewColumnList()</string> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: context.PaySheetTransaction_getListBoxPreviewColumnList(editable=1)</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: context.PaySheetTransaction_getEditableObjectLineList()==[]</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle> <pickle>
<tuple> <tuple>
<global name="Method" module="Products.Formulator.MethodField"/> <global name="Method" module="Products.Formulator.MethodField"/>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>editable</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>listbox_employee_share_price</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>editable</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_percent</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>hidden</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>editable</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>listbox_employee_share_quantity</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_money_quantity</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>editable</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>listbox_employer_share_price</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_percent</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>editable</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>listbox_employer_share_quantity</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_money_quantity</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="FloatField" module="Products.Formulator.StandardFields"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>listbox_id</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
<item>
<key> <string>not_float</string> </key>
<value> <string>You did not enter a floating point number.</string> </value>
</item>
<item>
<key> <string>required_not_found</string> </key>
<value> <string>Input is required but no input given.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_validator</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>extra</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>hidden</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>whitespace_preserve</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_validator</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>extra</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>hidden</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>input_style</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>precision</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>whitespace_preserve</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>alternate_name</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string>figure</string> </value>
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>display_width</string> </key>
<value> <int>10</int> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>external_validator</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>extra</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>hidden</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>input_style</string> </key>
<value> <string>-1 234.5</string> </value>
</item>
<item>
<key> <string>precision</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>required</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Id</string> </value>
</item>
<item>
<key> <string>whitespace_preserve</string> </key>
<value> <int>0</int> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
181 183
\ No newline at end of file \ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment