Commit 4c1fd577 authored by Mame Coumba Sall's avatar Mame Coumba Sall

2009-08-18 mame

*add new options in Base_viewStockReportSite to generate also report for items
*modify PackingList_viewAsODT so that items' references appear on PackingList report.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@28451 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 83508833
...@@ -93,6 +93,8 @@ ...@@ -93,6 +93,8 @@
<value> <value>
<list> <list>
<string>listbox_quantity_unit</string> <string>listbox_quantity_unit</string>
<string>listbox_variation_category_item_list</string>
<string>listbox_aggregate_quantity_list</string>
</list> </list>
</value> </value>
</item> </item>
...@@ -102,6 +104,7 @@ ...@@ -102,6 +104,7 @@
<list> <list>
<string>your_site_title</string> <string>your_site_title</string>
<string>your_at_date</string> <string>your_at_date</string>
<string>listbox_aggregate_title_list</string>
</list> </list>
</value> </value>
</item> </item>
......
...@@ -13,13 +13,13 @@ ...@@ -13,13 +13,13 @@
<key> <string>delegated_list</string> </key> <key> <string>delegated_list</string> </key>
<value> <value>
<list> <list>
<string>title</string>
<string>lines</string>
<string>columns</string> <string>columns</string>
<string>sort_columns</string> <string>editable_columns</string>
<string>lines</string>
<string>list_method</string> <string>list_method</string>
<string>selection_name</string> <string>selection_name</string>
<string>editable_columns</string> <string>sort_columns</string>
<string>title</string>
</list> </list>
</value> </value>
</item> </item>
...@@ -63,6 +63,12 @@ ...@@ -63,6 +63,12 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>columns</string> </key> <key> <string>columns</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>editable_columns</string> </key>
<value> <string></string> </value> <value> <string></string> </value>
</item> </item>
<item> <item>
...@@ -85,6 +91,10 @@ ...@@ -85,6 +91,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_columns</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>
...@@ -119,11 +129,19 @@ ...@@ -119,11 +129,19 @@
<string>Reference</string> <string>Reference</string>
</tuple> </tuple>
<tuple> <tuple>
<string>variation_text</string> <string>variation_category_item_list</string>
<string>Variation</string> <string>Variation</string>
</tuple> </tuple>
<tuple> <tuple>
<string>inventory</string> <string>aggregate_title_list</string>
<string>Items aggregated</string>
</tuple>
<tuple>
<string>aggregate_quantity_list</string>
<string>Items Quantity List</string>
</tuple>
<tuple>
<string>getInventory</string>
<string>Stock</string> <string>Stock</string>
</tuple> </tuple>
<tuple> <tuple>
...@@ -141,6 +159,14 @@ ...@@ -141,6 +159,14 @@
<string>quantity_unit</string> <string>quantity_unit</string>
<string>Quantity Unit</string> <string>Quantity Unit</string>
</tuple> </tuple>
<tuple>
<string>variation_category_item_list</string>
<string>Variation</string>
</tuple>
<tuple>
<string>aggregate_quantity_list</string>
<string>Item Quantity List</string>
</tuple>
</list> </list>
</value> </value>
</item> </item>
...@@ -159,7 +185,7 @@ ...@@ -159,7 +185,7 @@
<item> <item>
<key> <string>list_method</string> </key> <key> <string>list_method</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
<item> <item>
...@@ -192,6 +218,22 @@ ...@@ -192,6 +218,22 @@
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>context/Inventory_getStockReportBySiteDialogListboxColumnList</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<tuple> <tuple>
<global name="Method" module="Products.Formulator.MethodField"/> <global name="Method" module="Products.Formulator.MethodField"/>
......
...@@ -101,6 +101,7 @@ ...@@ -101,6 +101,7 @@
<string>your_positive_stock</string> <string>your_positive_stock</string>
<string>your_negative_stock</string> <string>your_negative_stock</string>
<string>your_zero_stock</string> <string>your_zero_stock</string>
<string>your_item_stock</string>
</list> </list>
</value> </value>
</item> </item>
......
<?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>description</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>your_item_stock</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>description</string> </key>
<value> <string>Displays the detailed report of items in the inventory</string> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_checkbox</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Detailed Report of Items</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?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>Script_magic</string> </key>
<value> <int>3</int> </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>from Products.ERP5Type.Document import newTempBase\n
from Products.ERP5Type.Utils import cartesianProduct\n
from DateTime import DateTime\n
portal = context.getPortalObject()\n
request = portal.REQUEST\n
at_date = request.form["at_date"]\n
at_date = DateTime().Date()\n
\n
tracking_parameters = {\n
\'node_uid\': context.node_uid,\n
\'resource_uid\': context.getResourceUid(),\n
\'section_uid\' : context.section_uid,\n
\'at_date\': context.getStartDate(),\n
\'output\': 0,\n
\n
\'item_catalog_title\': request.get(\'title\') or \'\',\n
\'item_catalog_reference\': request.get(\'reference\') or \'\',\n
\'item_catalog_portal_type\': \'Item\',\n
}\n
result_list = []\n
check_variation = bool(context.getVariationCategoryList())\n
context.log(check_variation)\n
if check_variation==True and context.getPortalType()!=\'Simulation Movement\':\n
context.log(context.getObject())\n
acceptable_variation_category_list = \\\n
cartesianProduct(context.getObject().getCellRange(base_id=\'movement\'))\n
context.log(acceptable_variation_category_list)\n
\n
for tracking_brain in portal.portal_simulation.getTrackingList(\n
**tracking_parameters):\n
item = tracking_brain.getObject()\n
\n
if check_variation and \\\n
item.Item_getVariationCategoryList(at_date=context.getStartDate())\\\n
not in acceptable_variation_category_list:\n
continue\n
\n
result_list.append(item.getTitle())\n
\n
return result_list\n
</string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>at_date=None, site=None,positive_stock,negative_stock,zero_stock, **kw</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>5</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>at_date</string>
<string>site</string>
<string>positive_stock</string>
<string>negative_stock</string>
<string>zero_stock</string>
<string>kw</string>
<string>Products.ERP5Type.Document</string>
<string>newTempBase</string>
<string>Products.ERP5Type.Utils</string>
<string>cartesianProduct</string>
<string>DateTime</string>
<string>_getattr_</string>
<string>context</string>
<string>portal</string>
<string>request</string>
<string>_getitem_</string>
<string>tracking_parameters</string>
<string>result_list</string>
<string>bool</string>
<string>check_variation</string>
<string>True</string>
<string>acceptable_variation_category_list</string>
<string>_getiter_</string>
<string>_apply_</string>
<string>tracking_brain</string>
<string>item</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<tuple>
<none/>
<none/>
<none/>
<none/>
<none/>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Inventory_getAggregatedItems</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?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>Script_magic</string> </key>
<value> <int>3</int> </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>from Products.ERP5Type.Document import newTempBase\n
from Products.ERP5Type.Utils import cartesianProduct\n
from DateTime import DateTime\n
portal = context.getPortalObject()\n
request = portal.REQUEST\n
\n
at_date = request.form["at_date"]\n
context.log(at_date)\n
\n
tracking_parameters = {\n
\'node_uid\': context.node_uid,\n
\'resource_uid\': context.getResourceUid(),\n
\'section_uid\' : context.section_uid,\n
\'at_date\': context.getStartDate(),\n
\'output\': 0,\n
\n
\'item_catalog_title\': request.get(\'title\') or \'\',\n
\'item_catalog_reference\': request.get(\'reference\') or \'\',\n
\'item_catalog_portal_type\': \'Item\',\n
}\n
result_list = []\n
\n
check_variation = bool(context.getVariationCategoryList())\n
if check_variation==True and context.getPortalType()!=\'Simulation Movement\':\n
acceptable_variation_category_list = \\\n
cartesianProduct(context.getObject().getCellRange(base_id=\'movement\'))\n
\n
\n
for tracking_brain in portal.portal_simulation.getTrackingList(\n
**tracking_parameters):\n
item = tracking_brain.getObject()\n
\n
# XXX can this be done in SQL ?\n
# it could, by computing all variation texts, but I don\'t think this is\n
# really necessary.\n
if check_variation and \\\n
item.Item_getVariationCategoryList(at_date=context.getStartDate())\\\n
not in acceptable_variation_category_list:\n
continue\n
\n
result_list.append(item.getQuantity(at_date=DateTime().Date()))\n
\n
return result_list\n
</string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>at_date=None, site=None,positive_stock,negative_stock,zero_stock, **kw</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>5</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>at_date</string>
<string>site</string>
<string>positive_stock</string>
<string>negative_stock</string>
<string>zero_stock</string>
<string>kw</string>
<string>Products.ERP5Type.Document</string>
<string>newTempBase</string>
<string>Products.ERP5Type.Utils</string>
<string>cartesianProduct</string>
<string>DateTime</string>
<string>_getattr_</string>
<string>context</string>
<string>portal</string>
<string>request</string>
<string>_getitem_</string>
<string>tracking_parameters</string>
<string>result_list</string>
<string>bool</string>
<string>check_variation</string>
<string>True</string>
<string>acceptable_variation_category_list</string>
<string>_getiter_</string>
<string>_apply_</string>
<string>tracking_brain</string>
<string>item</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<tuple>
<none/>
<none/>
<none/>
<none/>
<none/>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Inventory_getAggregatedItemsQuantityList</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?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>Script_magic</string> </key>
<value> <int>3</int> </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>resolveCategory = context.getPortalObject().portal_categories.resolveCategory\n
column_item_list = [(\'resource_title\', \'Title\'),\n
(\'resource_reference\', \'Reference\'),\n
(\'variation_category_item_list\', \'Variation\'),\n
(\'inventory\',\'Stock\'),\n
(\'quantity_unit\',\'Quantity Unit\')]\n
\n
item_stock = context.REQUEST.form["item_stock"]\n
if item_stock==1:\n
column_item_list.append((\'aggregate_title_list\',\n
\'Items aggregated\'))\n
\n
column_item_list.append((\'aggregate_quantity_list\',\n
\'Items Quantity List\'))\n
\n
\n
return column_item_list\n
</string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string></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>0</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>_getattr_</string>
<string>context</string>
<string>resolveCategory</string>
<string>column_item_list</string>
<string>_getitem_</string>
<string>item_stock</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Inventory_getStockReportBySiteDialogListboxColumnList</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -271,6 +271,8 @@ AAA=</string> </value> ...@@ -271,6 +271,8 @@ AAA=</string> </value>
<table:table-column table:style-name=\'Tableau1.D\'/>\n <table:table-column table:style-name=\'Tableau1.D\'/>\n
<table:table-column table:style-name=\'Tableau1.E\'/>\n <table:table-column table:style-name=\'Tableau1.E\'/>\n
<table:table-column table:style-name=\'Tableau1.F\'/>\n <table:table-column table:style-name=\'Tableau1.F\'/>\n
<table:table-column table:style-name=\'Tableau1.G\'/>\n
\n
<table:table-header-rows>\n <table:table-header-rows>\n
<table:table-row table:style-name=\'Tableau1.1\'>\n <table:table-row table:style-name=\'Tableau1.1\'>\n
<table:table-cell table:style-name=\'Tableau1.A1\'\n <table:table-cell table:style-name=\'Tableau1.A1\'\n
...@@ -453,6 +455,10 @@ AAA=</string> </value> ...@@ -453,6 +455,10 @@ AAA=</string> </value>
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'orig_message\'/></text:p>\n <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'orig_message\'/></text:p>\n
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:translated_message != orig_message\'><span tal:replace=\'translated_message\'/></text:p>\n <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:translated_message != orig_message\'><span tal:replace=\'translated_message\'/></text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Items; orig_message python:unicode(here.Base_translateString(orig_string, lang=default_language),"utf-8"); translated_message python:unicode(here.Base_translateString(orig_string),"utf-8")\'>\n
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'orig_message\'/></text:p>\n
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:translated_message != orig_message\'><span tal:replace=\'translated_message\'/></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Quantity; orig_message python:unicode(here.Base_translateString(orig_string, lang=default_language),"utf-8"); translated_message python:unicode(here.Base_translateString(orig_string),"utf-8")\'>\n <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Quantity; orig_message python:unicode(here.Base_translateString(orig_string, lang=default_language),"utf-8"); translated_message python:unicode(here.Base_translateString(orig_string),"utf-8")\'>\n
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'orig_message\'/></text:p>\n <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'orig_message\'/></text:p>\n
<text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:translated_message != orig_message\'><span tal:replace=\'translated_message\'/></text:p>\n <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:translated_message != orig_message\'><span tal:replace=\'translated_message\'/></text:p>\n
...@@ -484,6 +490,10 @@ AAA=</string> </value> ...@@ -484,6 +490,10 @@ AAA=</string> </value>
<text:p text:style-name=\'Table_20_Contents\' tal:attributes="text:style-name left_style_name"><tal:block tal:repeat="line line_dict/description"><tal:block\n <text:p text:style-name=\'Table_20_Contents\' tal:attributes="text:style-name left_style_name"><tal:block tal:repeat="line line_dict/description"><tal:block\n
tal:replace="line"/><text:line-break tal:condition="not:repeat/line/end"/></tal:block></text:p>\n tal:replace="line"/><text:line-break tal:condition="not:repeat/line/end"/></tal:block></text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name=\'Tableau1.A3\' office:value-type=\'string\'>\n
<text:p text:style-name=\'Table_20_Contents\' tal:attributes="text:style-name left_style_name"><tal:block tal:repeat="line line_dict/aggregate_title_list"><tal:block\n
tal:replace="line"/><text:line-break tal:condition="not:repeat/line/end"/></tal:block></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name=\'Tableau1.A3\'\n <table:table-cell table:style-name=\'Tableau1.A3\'\n
office:value-type=\'float\'\n office:value-type=\'float\'\n
tal:condition="python: line_dict[\'total_quantity\'] != \'\'"\n tal:condition="python: line_dict[\'total_quantity\'] != \'\'"\n
......
717 719
\ 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