diff --git a/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/invoice_print.xml b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/invoice_print.xml
new file mode 100644
index 0000000000000000000000000000000000000000..64a9404e8987d6b17acaf7742d7cab78b18e28ad
--- /dev/null
+++ b/bt5/erp5_accounting/ActionTemplateItem/portal_types/Sale%20Invoice%20Transaction/invoice_print.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_print</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>invoice_print</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>1.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Print Invoice</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <tuple>
+        <global name="Expression" module="Products.CMFCore.Expression"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/Invoice_viewODTPrintDialog</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTDataDict.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTDataDict.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d093f43a41cc6bc8f92a6cece95c3b04332c7530
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTDataDict.xml
@@ -0,0 +1,343 @@
+<?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>T_ = context.Base_translateString\n
+\n
+def getFieldAsString(field):\n
+  field = field or \'\'\n
+  text = field.replace(\'\\r\', \'\')\n
+  text_list = text.split(\'\\n\')\n
+  text_list = [x for x in text_list if x]\n
+  return \', \'.join(text_list)\n
+\n
+def getProductAndLineDesc(prod_desc, line_desc):\n
+  if prod_desc:\n
+    if line_desc:\n
+      return \' - \'.join([getFieldAsString(prod_desc), getFieldAsString(line_desc)])\n
+    return getFieldAsString(prod_desc)\n
+  return getFieldAsString(line_desc)\n
+\n
+def getOneLineAddress(text, region):\n
+  text_list = [getFieldAsString(text)]\n
+  if region:\n
+    text_list.append(region)\n
+  return \', \'.join(text_list)\n
+\n
+def getPhoneAndFax(phone, fax):\n
+  s = \'\'\n
+  if phone:\n
+    s += \'%s: %s\' % (T_(\'tel.\'), phone)\n
+  if fax:\n
+    if s: s += \', \'\n
+    s += \'%s: %s\' % (T_(\'fax\'), fax)\n
+  return s\n
+\n
+def getEmail(email):\n
+  s = \'\'\n
+  if email:\n
+    s += \'%s: %s\' % (T_(\'email\'), email)\n
+  return s\n
+\n
+def getVatId(vat_id):\n
+  s = \'\'\n
+  if vat_id:\n
+    s += \'%s: %s\' % (T_(\'VAT ID\'), vat_id)\n
+  return s\n
+\n
+preferred_date_order = context.getPortalObject().portal_preferences.getPreferredDateOrder() or \'ymd\'\n
+separator = \'/\'\n
+def getOrderedDate(date):\n
+  if date is None:\n
+    return \'\'\n
+  pattern = separator.join(list(preferred_date_order))\n
+  pattern = pattern.replace(\'y\', \'%Y\')\n
+  pattern = pattern.replace(\'m\', \'%m\')\n
+  pattern = pattern.replace(\'d\', \'%d\')\n
+  return date.strftime(pattern)\n
+\n
+def getSourceReference(line):\n
+  category_list = line.getAcquiredCategoryList()\n
+  portal_type_list = (\'Invoice Line\',\n
+                      \'Invoice Cell\',)\n
+  tmp_context = line.asContext(context=line, categories=category_list)\n
+  predicate_list = context.portal_domains.searchPredicateList(tmp_context, portal_type=portal_type_list)\n
+  for predicate in predicate_list:\n
+    source_reference = predicate.getSourceReference()\n
+    if source_reference:\n
+     return source_reference\n
+  return \'\'\n
+\n
+def getPaymentConditionText(order):\n
+  if order.getPaymentConditionPaymentEndOfMonth():\n
+    return T_("End of Month")\n
+  days = order.getPaymentConditionPaymentTerm()\n
+  if days:\n
+    return \'%s %s\' % (days, T_(\'Days\'))\n
+  return \'\'\n
+\n
+line_list = []\n
+total_price = 0.0\n
+total_vat = 0.0\n
+\n
+excluded_portal_type_list = context.getPortalTaxMovementTypeList() + context.getPortalAccountingMovementTypeList()\n
+\n
+def getSubLineList(obj):\n
+  sub_list = []\n
+  for x in obj.searchFolder(portal_type=context.getPortalInvoiceMovementTypeList(),\n
+      sort_on=[(\'int_index\', \'ascending\'), (\'reference\', \'ascending\')]):\n
+    if x.getPortalType() in excluded_portal_type_list:\n
+      continue\n
+    sub_list.append(x)\n
+    sub_list.extend(getSubLineList(x))\n
+  return sub_list\n
+\n
+for line in getSubLineList(context):\n
+  prod_desc = line.getResource() is not None and line.getResourceValue().getDescription() or \'\'\n
+  desc = getProductAndLineDesc(prod_desc, line.getDescription())\n
+\n
+  line_dict = {\n
+    \'style_name\': \'Table_20_Contents\',\n
+    \'left_style_name\': \'Table_20_Contents_20_Left\',\n
+    \'right_style_name\': \'Table_20_Contents_20_Right\',\n
+    \'index\': line.getReference() or line.getIntIndex(),\n
+    \'source_reference\': getSourceReference(line),\n
+    \'reference\': line.getResource() is not None and line.getResourceValue().getReference() or \'\',\n
+    \'description\': desc,\n
+    \'total_quantity\': line.getTotalQuantity() or \'\',\n
+    \'quantity_unit\': line.getQuantityUnitTitle() or (line.getResource() and line.getResourceValue().getQuantityUnitTitle()) or \'\',\n
+    \'stop_date\': getOrderedDate(line.getStopDate()) or \'\',\n
+    \'base_price\': line.getPrice() or \'\',\n
+    \'total_price\': line.getTotalPrice() or \'\',\n
+  }\n
+  total_price += line.getTotalPrice() or 0.0\n
+  line_list.append(line_dict.copy())\n
+\n
+data_dict = {\n
+  \'source_section_title\': context.getSourceSectionTitle() or \'\',\n
+  \'source_section_address\': getOneLineAddress(\n
+      context.getSourceSection() and context.getSourceSectionValue().getDefaultAddressText() or \'\',\n
+      context.getSourceSection() and context.getSourceSectionValue().getDefaultAddressRegionTitle() or \'\'),\n
+  \'source_section_telfax\': getPhoneAndFax(context.getSourceSection() and context.getSourceSectionValue().getTelephoneText() or \'\',\n
+      context.getSourceSection() and context.getSourceSectionValue().getFaxText() or \'\'),\n
+  \'source_section_email\': unicode(getEmail(context.getSourceSection() and context.getSourceSectionValue().getEmailText() or \'\'), \'utf8\'),\n
+  \'source_section_vatid\': unicode(getVatId(context.getSourceSection() and context.getSourceSectionValue().getVatCode() or \'\'), \'utf8\'),\n
+\n
+  \'source_decision_title\': context.getSourceDecisionTitle() or \'\',\n
+  \'source_decision_address\': unicode(getOneLineAddress(\n
+      context.getSourceDecision() and context.getSourceDecisionValue().getDefaultAddressText() or \'\',\n
+      context.getSourceDecision() and context.getSourceDecisionValue().getDefaultAddressRegionTitle() or \'\'), \'utf8\'),\n
+  \'source_decision_telfax\': getPhoneAndFax(context.getSourceDecision() and context.getSourceDecisionValue().getTelephoneText() or \'\',\n
+      context.getSourceDecision() and context.getSourceDecisionValue().getFaxText() or \'\'),\n
+  \'source_decision_email\': getEmail(context.getSourceDecision() and context.getSourceDecisionValue().getEmailText() or \'\'),\n
+  \'source_decision_vatid\': unicode(getVatId(context.getSourceDecision() and context.getSourceDecisionValue().getVatCode() or \'\'), \'utf8\'),\n
+\n
+  \'destination_title\': context.getDestinationTitle() or \'\',\n
+  \'destination_address\': getOneLineAddress(\n
+      context.getDestination() and context.getDestinationValue().getDefaultAddressText() or \'\',\n
+      context.getDestination() and context.getDestinationValue().getDefaultAddressRegionTitle() or \'\'),\n
+  \'destination_telfax\': getPhoneAndFax(context.getDestination() and context.getDestinationValue().getTelephoneText() or \'\',\n
+      context.getDestination() and context.getDestinationValue().getFaxText() or \'\'),\n
+  \'destination_email\': getEmail(context.getDestination() and context.getDestinationValue().getEmailText() or \'\'),\n
+\n
+  \'destination_section_title\': unicode(context.getDestinationSectionTitle() or \'\', \'utf8\'),\n
+  \'destination_section_image_path\': context.getDestinationSectionValue().getDefaultImagePath(),\n
+  \'destination_section_address\': unicode(getOneLineAddress(\n
+      context.getDestinationSection() and context.getDestinationSectionValue().getDefaultAddressText() or \'\',\n
+      context.getDestinationSection() and context.getDestinationSectionValue().getDefaultAddressRegionTitle() or \'\'), \'utf8\'),\n
+  \'destination_section_telfax\': unicode(getPhoneAndFax(\n
+      context.getDestinationSection() and context.getDestinationSectionValue().getTelephoneText() or \'\',\n
+      context.getDestinationSection() and context.getDestinationSectionValue().getTelephoneText() or \'\'), \'utf8\'),\n
+  \'destination_section_email\': unicode(getEmail(context.getDestinationSection() and context.getDestinationSectionValue().getEmailText() or \'\'), \'utf8\'),\n
+  \'destination_section_vatid\': unicode(getVatId(context.getDestinationSection() and context.getDestinationSectionValue().getVatCode() or \'\'), \'utf8\'),\n
+\n
+  \'destination_decision_title\': context.getDestinationDecisionTitle() or \'\',\n
+  \'destination_decision_telfax\': getPhoneAndFax(context.getDestinationDecision() and context.getDestinationDecisionValue().getTelephoneText() or \'\',\n
+      context.getDestinationDecision() and context.getDestinationDecisionValue().getFaxText() or \'\'),\n
+  \'destination_decision_email\': getEmail(context.getDestinationDecision() and context.getDestinationDecisionValue().getEmailText() or \'\'),\n
+\n
+  \'reference\': context.getReference() or \'\',\n
+  \'start_date\': getOrderedDate(context.getStartDate()) or \'\',\n
+  \'stop_date\': getOrderedDate(context.getStopDate()) or \'\',\n
+  \'currency\': context.getPriceCurrencyReference() or \'\',\n
+  \'payment_condition\': getPaymentConditionText(context),\n
+  \'delivery_mode\': context.getDeliveryModeTitle() or \'\',\n
+  \'incoterm\': context.getIncoterm() and context.getIncotermValue().getCodification() or \'\',\n
+\n
+  \'total_price_novat\': total_price,\n
+  \'vat_list\': context.searchFolder(portal_type=context.getPortalTaxMovementTypeList(), order_by=\'title\'),\n
+  \'description\': getFieldAsString(context.getDescription()),\n
+\n
+  \'line_list\': line_list,\n
+}\n
+\n
+#from pprint import pformat\n
+#context.log(pformat(data_dict))\n
+return data_dict\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>_owner</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>T_</string>
+                            <string>getFieldAsString</string>
+                            <string>getProductAndLineDesc</string>
+                            <string>getOneLineAddress</string>
+                            <string>getPhoneAndFax</string>
+                            <string>getEmail</string>
+                            <string>getVatId</string>
+                            <string>preferred_date_order</string>
+                            <string>separator</string>
+                            <string>getOrderedDate</string>
+                            <string>getSourceReference</string>
+                            <string>getPaymentConditionText</string>
+                            <string>line_list</string>
+                            <string>total_price</string>
+                            <string>total_vat</string>
+                            <string>excluded_portal_type_list</string>
+                            <string>getSubLineList</string>
+                            <string>_getiter_</string>
+                            <string>line</string>
+                            <string>None</string>
+                            <string>prod_desc</string>
+                            <string>desc</string>
+                            <string>line_dict</string>
+                            <string>_inplacevar_</string>
+                            <string>unicode</string>
+                            <string>data_dict</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>Invoice_getODTDataDict</string> </value>
+        </item>
+        <item>
+            <key> <string>warnings</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTStyleSheet.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTStyleSheet.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2aa8d63303e1119fdcadee89439631329c30b97e
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_getODTStyleSheet.xml
@@ -0,0 +1,280 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="File" module="OFS.Image"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_EtagSupport__etag</string> </key>
+            <value> <string>ts06116239.52</string> </value>
+        </item>
+        <item>
+            <key> <string>__ac_local_roles__</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>__name__</string> </key>
+            <value> <string>Invoice_getODTStyleSheet</string> </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>application/octet-stream</string> </value>
+        </item>
+        <item>
+            <key> <string>data</string> </key>
+            <value> <string encoding="base64">UEsDBBQAAAAAACWCdThexjIMJwAAACcAAAAIAAAAbWltZXR5cGVhcHBsaWNhdGlvbi92bmQub2Fz
+aXMub3BlbmRvY3VtZW50LnRleHRQSwMEFAAAAAAAJYJ1OAAAAAAAAAAAAAAAABoAAABDb25maWd1
+cmF0aW9uczIvc3RhdHVzYmFyL1BLAwQUAAgACAAlgnU4AAAAAAAAAAAAAAAAJwAAAENvbmZpZ3Vy
+YXRpb25zMi9hY2NlbGVyYXRvci9jdXJyZW50LnhtbAMAUEsHCAAAAAACAAAAAAAAAFBLAwQUAAAA
+AAAlgnU4AAAAAAAAAAAAAAAAGAAAAENvbmZpZ3VyYXRpb25zMi9mbG9hdGVyL1BLAwQUAAAAAAAl
+gnU4AAAAAAAAAAAAAAAAGgAAAENvbmZpZ3VyYXRpb25zMi9wb3B1cG1lbnUvUEsDBBQAAAAAACWC
+dTgAAAAAAAAAAAAAAAAcAAAAQ29uZmlndXJhdGlvbnMyL3Byb2dyZXNzYmFyL1BLAwQUAAAAAAAl
+gnU4AAAAAAAAAAAAAAAAGAAAAENvbmZpZ3VyYXRpb25zMi9tZW51YmFyL1BLAwQUAAAAAAAlgnU4
+AAAAAAAAAAAAAAAAGAAAAENvbmZpZ3VyYXRpb25zMi90b29sYmFyL1BLAwQUAAAAAAAlgnU4AAAA
+AAAAAAAAAAAAHwAAAENvbmZpZ3VyYXRpb25zMi9pbWFnZXMvQml0bWFwcy9QSwMEFAAIAAgAJYJ1
+OAAAAAAAAAAAAAAAAAsAAABjb250ZW50LnhtbO1dW3PbuBV+76/gqNNOt7OkeNHFcmPv2LGzyUyS
+dRMn0z55YBKSuSEJBgAtq7++AElJ1IUUAYI2nXgfshFwDvid+wEEKq9+ewgD7R5i4qPopGcZZk+D
+kYs8P5qd9L5cv9GPer+d/uUVmk59Fx57yE1CGFHdRRFl/9cYd0SOs9mTXoKjYwSIT44jEEJyTN1j
+FMNoyXVcpD5On5WNELoIarOnxEVuCh9oXWZOu8ELbus/OSUucnsYzOsyc1qm1CL7FNVlfiCBPkVM
+62EMqL+F4iHwo28nvTtK4+N+fz6fG3PHQHjWtyaTST+dXQF2V3RxgoOUynP7MID8YaRvGVZ/SRtC
+Curi47RFSFES3kJcWzWAgh2rkvtZbY+4n5Woxr0DuLZvpMSb5nW8+uZ1vCJvCOhdiU2O+h/YZPrH
+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</string> </value>
+        </item>
+        <item>
+            <key> <string>precondition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>size</string> </key>
+            <value> <long>12867</long> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewAsODT.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewAsODT.xml
new file mode 100644
index 0000000000000000000000000000000000000000..230f71db89982011d754b4b6d1d84ed5c23a68d4
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewAsODT.xml
@@ -0,0 +1,775 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="OOoTemplate" module="Products.ERP5OOo.OOoTemplate"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>OLE_documents_zipstring</string> </key>
+            <value> <string encoding="base64">UEsDBBQAAAAIAKKDdTg1Ytc5PgEAAEoHAAAVAAAATUVUQS1JTkYvbWFuaWZlc3QueG1stZVLasMw
+EED3PYXR3lbbVTFxAi30BOkBJvLYEeiHZhSS21cO5NM2lKZYOwmk90YjzWix2ltT7TCS9q4TT82j
+qNAp32s3duJj/V6/iNXyYWHB6QGJ29OgyvscnaedSNG1HkhT68AitaxaH9D1XiWLjtuv69vJtHyo
+LuBBG6zzwnioLjLsNdR8CNgJCMFoBZzjlDvXN0dXc61oGPcsLruHZEwdgLedkELeJbtNefNu0GOK
+xyDoWRIDJ9pALIMHpdBgnvooVYpxOmLOYnFXEcFgPDAWggcfUshPIBXCRz9GpHI3PYVeDM7em2Jw
+bWFEkq+aLQQq6riT/b1fUHJT9TRJN+pa8LcY7pRPnUhOtXoTnv38v2L+nUt8MEizYy0yzNZ41ttk
+Nw60IcmnYRPcODd83sQic/4Qz6ldyB//4fITUEsBAhQAFAAAAAgAooN1ODVi1zk+AQAASgcAABUA
+AAAAAAAAAAAAAAAAAAAAAE1FVEEtSU5GL21hbmlmZXN0LnhtbFBLBQYAAAAAAQABAEMAAABxAQAA
+AAA=</string> </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_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string encoding="cdata"><![CDATA[
+
+<office:document-content xmlns:office=\'urn:oasis:names:tc:opendocument:xmlns:office:1.0\' xmlns:text=\'urn:oasis:names:tc:opendocument:xmlns:text:1.0\' xmlns:number=\'urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0\' xmlns:meta=\'urn:oasis:names:tc:opendocument:xmlns:meta:1.0\' xmlns:tal=\'http://xml.zope.org/namespaces/tal\' xmlns:table=\'urn:oasis:names:tc:opendocument:xmlns:table:1.0\' xmlns:style=\'urn:oasis:names:tc:opendocument:xmlns:style:1.0\' xmlns:script=\'urn:oasis:names:tc:opendocument:xmlns:script:1.0\' xmlns:xlink=\'http://www.w3.org/1999/xlink\' xmlns:math=\'http://www.w3.org/1998/Math/MathML\' xmlns:draw=\'urn:oasis:names:tc:opendocument:xmlns:drawing:1.0\' xmlns:form=\'urn:oasis:names:tc:opendocument:xmlns:form:1.0\' xmlns:ooo=\'http://openoffice.org/2004/office\' xmlns:dc=\'http://purl.org/dc/elements/1.1/\' xmlns:chart=\'urn:oasis:names:tc:opendocument:xmlns:chart:1.0\' xmlns:i18n=\'http://xml.zope.org/namespaces/i18n\' xmlns:dr3d=\'urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0\' xmlns:fo=\'urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0\' xmlns:xforms=\'http://www.w3.org/2002/xforms\' xmlns:dom=\'http://www.w3.org/2001/xml-events\' xmlns:ooow=\'http://openoffice.org/2004/writer\' xmlns:svg=\'urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0\' xmlns:metal=\'http://xml.zope.org/namespaces/metal\' xmlns:xsd=\'http://www.w3.org/2001/XMLSchema\' xmlns:xsi=\'http://www.w3.org/2001/XMLSchema-instance\' xmlns:oooc=\'http://openoffice.org/2004/calc\' tal:attributes=\'dummy python:request.RESPONSE.setHeader("Content-Type", "text/html;; charset=utf-8")\' office:version=\'1.0\'\n
+          tal:define=\'data_dict here/Invoice_getODTDataDict\'>\n
+  <office:scripts/>\n
+  <office:font-face-decls>\n
+    <style:font-face svg:font-family=\'StarSymbol\' style:name=\'StarSymbol\' style:font-charset=\'x-symbol\'/>\n
+    <style:font-face svg:font-family="\'DejaVu Sans\'" style:name=\'DejaVu Sans1\' style:font-pitch=\'variable\'/>\n
+    <style:font-face svg:font-family="\'Times New Roman\'" style:font-family-generic=\'roman\' style:name=\'Times New Roman\' style:font-pitch=\'variable\'/>\n
+    <style:font-face svg:font-family=\'Arial\' style:font-family-generic=\'swiss\' style:name=\'Arial1\' style:font-pitch=\'variable\'/>\n
+    <style:font-face svg:font-family=\'Arial\' style:font-family-generic=\'swiss\' style:name=\'Arial\' style:font-pitch=\'variable\' style:font-adornments=\'Normalny\'/>\n
+    <style:font-face svg:font-family="\'DejaVu Sans\'" style:font-family-generic=\'swiss\' style:name=\'DejaVu Sans\' style:font-pitch=\'variable\'/>\n
+    <style:font-face svg:font-family="\'DejaVu Sans\'" style:font-family-generic=\'system\' style:name=\'DejaVu Sans2\' style:font-pitch=\'variable\'/>\n
+  </office:font-face-decls>\n
+  <office:automatic-styles>\n
+    <style:style style:family=\'table\' style:name=\'Tableau1\'>\n
+      <style:table-properties fo:margin-left=\'0.021cm\' fo:margin-right=\'-0.014cm\' fo:break-before=\'page\' table:align=\'margins\' style:width=\'18.994cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.A\'>\n
+      <style:table-column-properties style:rel-column-width=\'2690*\' style:column-width=\'0.78cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.B\'>\n
+      <style:table-column-properties style:rel-column-width=\'7254*\' style:column-width=\'2.103cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.C\'>\n
+      <style:table-column-properties style:rel-column-width=\'7151*\' style:column-width=\'2.073cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.D\'>\n
+      <style:table-column-properties style:rel-column-width=\'24052*\' style:column-width=\'6.971cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.E\'>\n
+      <style:table-column-properties style:rel-column-width=\'4546*\' style:column-width=\'1.318cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.F\'>\n
+      <style:table-column-properties style:rel-column-width=\'3493*\' style:column-width=\'1.012cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.G\'>\n
+      <style:table-column-properties style:rel-column-width=\'5757*\' style:column-width=\'1.669cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.H\'>\n
+      <style:table-column-properties style:rel-column-width=\'4722*\' style:column-width=\'1.369cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau1.I\'>\n
+      <style:table-column-properties style:rel-column-width=\'5870*\' style:column-width=\'1.7cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau1.1\'>\n
+      <style:table-row-properties style:min-row-height=\'2.759cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau1.A1\'>\n
+      <style:table-cell-properties fo:padding=\'0cm\' fo:background-color=\'transparent\' fo:border=\'none\'>\n
+        <style:background-image/>\n
+      </style:table-cell-properties>\n
+    </style:style>\n
+    <style:style style:family=\'table\' style:name=\'Tableau2\'>\n
+      <style:table-properties fo:margin-left=\'0cm\' fo:margin-right=\'0.019cm\' table:align=\'margins\' style:width=\'18.974cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.A\'>\n
+      <style:table-column-properties style:rel-column-width=\'5326*\' style:column-width=\'1.542cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.B\'>\n
+      <style:table-column-properties style:rel-column-width=\'20270*\' style:column-width=\'5.868cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.C\'>\n
+      <style:table-column-properties style:rel-column-width=\'4344*\' style:column-width=\'1.258cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.D\'>\n
+      <style:table-column-properties style:rel-column-width=\'20214*\' style:column-width=\'5.853cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.E\'>\n
+      <style:table-column-properties style:rel-column-width=\'15381*\' style:column-width=\'4.454cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau2.1\'>\n
+      <style:table-row-properties style:row-height=\'2.251cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau2.A1\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'0.018cm solid #000000\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.E1.1\'>\n
+      <style:table-column-properties style:rel-column-width=\'6760*\' style:column-width=\'1.958cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau2.E1.2\'>\n
+      <style:table-column-properties style:rel-column-width=\'8621*\' style:column-width=\'2.496cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau2.E1.1\'>\n
+      <style:table-row-properties style:row-height=\'0.75cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau2.E1.2.1\'>\n
+      <style:table-cell-properties style:vertical-align=\'middle\' fo:padding=\'0.097cm\' fo:border=\'0.018cm solid #000000\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau2.E1.1.2\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'none\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau2.E1.2.2\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'0.018cm solid #000000\' fo:border-top=\'none\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau1.A2\'>\n
+      <style:table-cell-properties fo:padding=\'0.049cm\' fo:border-right=\'none\' fo:border-top=\'none\' fo:background-color=\'transparent\' fo:border-left=\'none\' fo:border-bottom=\'0.018cm solid #000000\'>\n
+        <style:background-image/>\n
+      </style:table-cell-properties>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau1.3\'>\n
+      <style:table-row-properties style:min-row-height=\'0.75cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau1.A3\'>\n
+      <style:table-cell-properties fo:padding=\'0cm\' fo:border-right=\'none\' fo:border-top=\'none\' fo:background-color=\'transparent\' fo:border-left=\'none\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'>\n
+        <style:background-image/>\n
+      </style:table-cell-properties>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau1.4\'>\n
+      <style:table-row-properties style:row-height=\'4.83cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau1.A4\'>\n
+      <style:table-cell-properties style:vertical-align=\'middle\' fo:padding=\'0cm\' fo:background-color=\'transparent\' fo:border=\'none\'>\n
+        <style:background-image/>\n
+      </style:table-cell-properties>\n
+    </style:style>\n
+    <style:style style:family=\'table\' style:name=\'Tableau3\'>\n
+      <style:table-properties style:may-break-between-rows=\'false\' table:align=\'margins\' style:width=\'18.994cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau3.A\'>\n
+      <style:table-column-properties style:rel-column-width=\'10535*\' style:column-width=\'3.053cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau3.B\'>\n
+      <style:table-column-properties style:rel-column-width=\'5493*\' style:column-width=\'1.593cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau3.C\'>\n
+      <style:table-column-properties style:rel-column-width=\'34451*\' style:column-width=\'9.985cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau3.D\'>\n
+      <style:table-column-properties style:rel-column-width=\'9165*\' style:column-width=\'2.656cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-column\' style:name=\'Tableau3.E\'>\n
+      <style:table-column-properties style:rel-column-width=\'5891*\' style:column-width=\'1.707cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau3.1\'>\n
+      <style:table-row-properties style:row-height=\'0.25cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.A1\'>\n
+      <style:table-cell-properties style:vertical-align=\'middle\' fo:padding=\'0.097cm\' fo:border=\'none\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau3.2\'>\n
+      <style:table-row-properties style:row-height=\'0.75cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau3.3\'>\n
+      <style:table-row-properties style:row-height=\'2cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.A2\'>\n
+      <style:table-cell-properties style:vertical-align=\'middle\' fo:padding=\'0cm\' fo:border=\'none\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.D2\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'0.018cm solid #000000\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.E2\'>\n
+      <style:table-cell-properties style:vertical-align=\'middle\' fo:padding=\'0.097cm\' fo:border=\'0.018cm solid #000000\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.D3\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'none\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.E3\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'0.018cm solid #000000\' fo:border-top=\'none\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau3.6\'>\n
+      <style:table-row-properties style:row-height=\'0.45cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.A6\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'0.018cm solid #000000\' fo:border-left=\'0.018cm solid #000000\' fo:border-bottom=\'none\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.B6\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'none\' fo:border-top=\'0.018cm solid #000000\' fo:border-left=\'none\' fo:border-bottom=\'none\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.E6\'>\n
+      <style:table-cell-properties fo:padding=\'0.097cm\' fo:border-right=\'0.018cm solid #000000\' fo:border-top=\'0.018cm solid #000000\' fo:border-left=\'none\' fo:border-bottom=\'none\' style:vertical-align=\'middle\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-row\' style:name=\'Tableau3.7\'>\n
+      <style:table-row-properties style:row-height=\'1.499cm\'/>\n
+    </style:style>\n
+    <style:style style:family=\'table-cell\' style:name=\'Tableau3.A7\'>\n
+      <style:table-cell-properties fo:border-left=\'0.018cm solid #000000\' fo:border-right=\'0.018cm solid #000000\' fo:border-bottom=\'0.018cm solid #000000\' fo:padding=\'0.097cm\' fo:border-top=\'none\'/>\n
+    </style:style>\n
+    <style:style style:parent-style-name=\'Table_20_Heading\' style:family=\'paragraph\' style:name=\'P1\'>\n
+      <style:text-properties fo:font-style=\'normal\' style:font-style-asian=\'normal\' style:font-size-complex=\'7pt\' style:font-size-asian=\'7pt\' style:font-style-complex=\'normal\' style:font-weight-complex=\'normal\' style:font-weight-asian=\'normal\' fo:font-size=\'7pt\' fo:font-weight=\'normal\'/>\n
+    </style:style>\n
+    <style:style style:parent-style-name=\'Table_20_Heading\' style:family=\'paragraph\' style:name=\'P2\'>\n
+      <style:paragraph-properties fo:text-align=\'start\' style:justify-single-word=\'false\'/>\n
+    </style:style>\n
+    <style:style style:parent-style-name=\'Table_20_Contents\' style:family=\'paragraph\' style:name=\'P3\'>\n
+      <style:paragraph-properties fo:text-align=\'justify\' style:justify-single-word=\'false\'/>\n
+    </style:style>\n
+    <style:style style:parent-style-name=\'Text_20_body\' style:family=\'paragraph\' style:name=\'P4\'>\n
+      <style:text-properties style:font-size-complex=\'6pt\' style:font-size-asian=\'6pt\' style:font-weight-complex=\'normal\' style:font-weight-asian=\'normal\' fo:font-size=\'6pt\' fo:font-weight=\'normal\'/>\n
+    </style:style>\n
+  </office:automatic-styles>\n
+  <office:body>\n
+    <office:text>\n
+      <text:variable-decls>\n
+        <text:variable-decl text:name=\'ds_title\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'ds_address\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'ds_telfax\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'ds_email\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'ds_vatid\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'purchase_order\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'purchase_order_tr\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'page\' office:value-type=\'string\'/>\n
+        <text:variable-decl text:name=\'of\' office:value-type=\'string\'/>\n
+      </text:variable-decls>\n
+      <text:sequence-decls>\n
+        <text:sequence-decl text:display-outline-level=\'0\' text:name=\'Illustration\'/>\n
+        <text:sequence-decl text:display-outline-level=\'0\' text:name=\'Table\'/>\n
+        <text:sequence-decl text:display-outline-level=\'0\' text:name=\'Text\'/>\n
+        <text:sequence-decl text:display-outline-level=\'0\' text:name=\'Drawing\'/>\n
+      </text:sequence-decls>\n
+      <table:table table:style-name=\'Tableau1\' table:name=\'Tableau1\'>\n
+        <table:table-column table:style-name=\'Tableau1.A\'/>\n
+        <table:table-column table:style-name=\'Tableau1.B\'/>\n
+        <table:table-column table:style-name=\'Tableau1.C\'/>\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.F\'/>\n
+        <table:table-column table:style-name=\'Tableau1.G\'/>\n
+        <table:table-column table:style-name=\'Tableau1.H\'/>\n
+        <table:table-column table:style-name=\'Tableau1.I\'/>\n
+        <table:table-header-rows>\n
+          <table:table-row table:style-name=\'Tableau1.1\'>\n
+            <table:table-cell table:style-name=\'Tableau1.A1\'\n
+                              table:number-columns-spanned=\'9\'\n
+                              office:value-type=\'string\'>\n
+              <table:table table:style-name=\'Tableau2\' table:name=\'Tableau2\'>\n
+                <table:table-column table:style-name=\'Tableau2.A\'/>\n
+                <table:table-column table:style-name=\'Tableau2.B\'/>\n
+                <table:table-column table:style-name=\'Tableau2.C\'/>\n
+                <table:table-column table:style-name=\'Tableau2.D\'/>\n
+                <table:table-column table:style-name=\'Tableau2.E\'/>\n
+                <table:table-header-rows>\n
+                  <table:table-row table:style-name=\'Tableau2.1\'>\n
+                    <table:table-cell table:style-name=\'Tableau2.A1\'\n
+                                      office:value-type=\'string\'>\n
+                      <!--This PageTemplate is Used For Sale Order and Purchase Order-->\n
+                      <tal:block tal:define="orig_string string:Supplier;\n
+                                 en_string python:here.Base_translateString(orig_string, lang=\'en\');\n
+                                 my_string python:here.Base_translateString(orig_string);\n
+                                 ds_title python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'destination_section_title\'] or data_dict[\'source_section_title\'];\n
+                                 ds_address python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'destination_section_address\'] or data_dict[\'source_section_address\'];\n
+                                 ds_telfax python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'destination_section_telfax\'] or data_dict[\'source_section_telfax\'];\n
+                                 ds_email python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'destination_section_email\'] or data_dict[\'source_section_email\'];\n
+                                 ds_vatid python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'destination_section_vatid\'] or data_dict[\'source_section_vatid\'];\n
+                                 orig_title string:Invoice;\n
+                                 en_title python:here.Base_translateString(orig_title, lang=\'en\');\n
+                                 my_title python:here.Base_translateString(orig_title);\n
+                                 orig_page string:Page;\n
+                                 en_page python:here.Base_translateString(orig_page, lang=\'en\');\n
+                                 my_page python:here.Base_translateString(orig_page);\n
+                                 orig_of string:of;\n
+                                 en_of python:here.Base_translateString(orig_of, lang=\'en\');\n
+                                 my_of python:here.Base_translateString(orig_of)">\n
+                        <text:p text:style-name=\'Table_20_Heading\'>\n
+                          <text:variable-set text:formula=\'ooow:title\'\n
+                                            text:name=\'ds_title\'\n
+                                            text:display=\'none\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value ds_title\'/>\n
+                          <text:variable-set text:formula=\'ooow:address\'\n
+                                            text:name=\'ds_address\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'address\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value ds_address\'/>\n
+                          <text:variable-set text:formula=\'ooow:telfax\'\n
+                                            text:name=\'ds_telfax\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'telfax\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value ds_telfax\'/>\n
+                          <text:variable-set text:formula=\'ooow:email\'\n
+                                            text:name=\'ds_email\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'email\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value ds_email\'/>\n
+                          <text:variable-set text:formula=\'ooow:vatid\'\n
+                                            text:name=\'ds_vatid\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'vatid\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value ds_vatid\'/>\n
+                          <text:variable-set text:formula=\'ooow:purchase_order\'\n
+                                            text:name=\'purchase_order\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'purchase_order\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value en_title\'/>\n
+                          <text:variable-set text:formula=\'ooow:purchase_order_tr\'\n
+                                            text:name=\'purchase_order_tr\'\n
+                                            text:display=\'none\'\n
+                                            office:string-value=\'purchase_order_tr\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:condition="python: en_title != my_title"\n
+                                            tal:attributes=\'office:string-value my_title\'/>\n
+                          <text:variable-set text:formula=\'ooow:page\'\n
+                                            text:name=\'page\' text:display=\'none\'\n
+                                            office:string-value=\'page\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value my_page\'/>\n
+                          <text:variable-set text:formula=\'ooow:of\'\n
+                                            text:name=\'of\' text:display=\'none\'\n
+                                            office:string-value=\'of\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:attributes=\'office:string-value my_of\'/>\n
+                          <tal:block tal:replace=\'en_string\'/>:</text:p>\n
+                        <text:p text:style-name=\'Table_20_Heading\'\n
+                                tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                      </tal:block>\n
+                    </table:table-cell>\n
+                    <table:table-cell table:style-name=\'Tableau2.A1\'\n
+                                      office:value-type=\'string\'>\n
+                      <text:p text:style-name=\'Table_20_Contents\'\n
+                              tal:content=\'python:data_dict["source_section_title"]\'>source_section</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\'\n
+                              tal:content=\'python:data_dict["source_section_address"]\'>address</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\'\n
+                              tal:content=\'python:data_dict["source_section_telfax"]\'>tel, fax</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\'\n
+                              tal:content=\'python:data_dict["source_section_email"]\'>email</text:p>\n
+                    </table:table-cell>\n
+                    <table:table-cell table:style-name=\'Tableau2.A1\'\n
+                                      office:value-type=\'string\'\n
+                                      tal:define=\'orig_string string:Recipient; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                      <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                      <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                    </table:table-cell>\n
+                    <table:table-cell table:style-name=\'Tableau2.A1\' office:value-type=\'string\'>\n
+                      <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_title"]\'>destination</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_address"]\'>address</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_telfax"]\'>tel, fax</text:p>\n
+                      <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_email"]\'>email</text:p>\n
+                    </table:table-cell>\n
+                    <table:table-cell>\n
+                      <table:table table:is-sub-table=\'true\'>\n
+                        <table:table-column table:style-name=\'Tableau2.E1.1\'/>\n
+                        <table:table-column table:style-name=\'Tableau2.E1.2\'/>\n
+                        <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                          <table:table-cell table:style-name=\'Tableau2.A1\' office:value-type=\'string\' tal:define=\'orig_string string:Reference; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                            <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                            <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                          </table:table-cell>\n
+                          <table:table-cell table:style-name=\'Tableau2.E1.2.1\' office:value-type=\'string\'>\n
+                            <text:p text:style-name=\'Big_20_Table_20_Content\' tal:content=\'python:data_dict["reference"]\'>reference</text:p>\n
+                          </table:table-cell>\n
+                        </table:table-row>\n
+                        <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                          <table:table-cell table:style-name=\'Tableau2.E1.1.2\'\n
+                                            office:value-type=\'string\'\n
+                                            tal:define=\'orig_string string:Document Date; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                            <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                            <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                          </table:table-cell>\n
+                          <table:table-cell table:style-name=\'Tableau2.E1.2.2\' office:value-type=\'string\'>\n
+                            <text:p text:style-name=\'Table_20_Contents\'\n
+                                    tal:content="python: here.getPortalType().startswith(\'Purchase\') and data_dict[\'start_date\'] or data_dict[\'stop_date\']">start_date</text:p>\n
+                          </table:table-cell>\n
+                        </table:table-row>\n
+                        <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                          <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Currency; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                            <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                            <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                          </table:table-cell>\n
+                          <table:table-cell table:style-name=\'Tableau2.E1.2.2\' office:value-type=\'string\'>\n
+                            <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["currency"]\'>EUR</text:p>\n
+                          </table:table-cell>\n
+                        </table:table-row>\n
+                      </table:table>\n
+                    </table:table-cell>\n
+                  </table:table-row>\n
+                </table:table-header-rows>\n
+                <table:table-row table:style-name=\'Tableau2.1\'>\n
+                  <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Seller; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                    <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                    <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                  </table:table-cell>\n
+                  <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\'>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["source_decision_title"]\'>name</text:p>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["source_decision_telfax"]\'>tel, fax</text:p>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["source_decision_email"]\'>email</text:p>\n
+                  </table:table-cell>\n
+                  <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Buyer; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                    <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                    <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                  </table:table-cell>\n
+                  <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\'>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_decision_title"]\'>name</text:p>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_decision_telfax"]\'>tel, fax</text:p>\n
+                    <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["destination_decision_email"]\'>email</text:p>\n
+                  </table:table-cell>\n
+                  <table:table-cell>\n
+                    <table:table table:is-sub-table=\'true\'>\n
+                      <table:table-column table:style-name=\'Tableau2.E1.1\'/>\n
+                      <table:table-column table:style-name=\'Tableau2.E1.2\'/>\n
+                      <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Payment; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                          <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                          <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                        </table:table-cell>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.2.2\' office:value-type=\'string\'>\n
+                          <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["payment_condition"]\'>60 days</text:p>\n
+                        </table:table-cell>\n
+                      </table:table-row>\n
+                      <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Delivery Mode; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                          <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                          <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                        </table:table-cell>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.2.2\' office:value-type=\'string\'>\n
+                          <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["delivery_mode"]\'>del mode</text:p>\n
+                        </table:table-cell>\n
+                      </table:table-row>\n
+                      <table:table-row table:style-name=\'Tableau2.E1.1\'>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.1.2\' office:value-type=\'string\' tal:define=\'orig_string string:Incoterm; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                          <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                          <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                        </table:table-cell>\n
+                        <table:table-cell table:style-name=\'Tableau2.E1.2.2\' office:value-type=\'string\'>\n
+                          <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:data_dict["incoterm"]\'>incoterm</text:p>\n
+                        </table:table-cell>\n
+                      </table:table-row>\n
+                    </table:table>\n
+                  </table:table-cell>\n
+                </table:table-row>\n
+              </table:table>\n
+              <text:p text:style-name=\'P1\'/>\n
+            </table:table-cell>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+            <table:covered-table-cell/>\n
+          </table:table-row>\n
+          <table:table-row>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Line; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Your Item no.; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Our Item no.; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Description; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Left\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></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; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Unit; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Delivery Date; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Unit Price; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+            <table:table-cell table:style-name=\'Tableau1.A2\' office:value-type=\'string\' tal:define=\'orig_string string:Total Price; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\'><span tal:replace=\'en_string\'/></text:p>\n
+              <text:p text:style-name=\'Item_20_Table_20_Title_20_Right\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/></text:p>\n
+            </table:table-cell>\n
+          </table:table-row>\n
+        </table:table-header-rows>\n
+        <table:table-row table:style-name=\'Tableau1.3\' tal:repeat=\'line_dict python:data_dict["line_list"]\'>\n
+        <div tal:omit-tag=\'\' tal:define=\'style_name python:line_dict["style_name"];\n
+                                         left_style_name python:line_dict["left_style_name"];\n
+                                         right_style_name python:line_dict["right_style_name"]\'>\n
+          <table:table-cell table:style-name=\'Tableau1.A3\' office:value-type=\'string\'>\n
+            <text:p text:style-name=\'Table_20_Contents\' tal:content=\'python:line_dict["index"]\' tal:attributes=\'text:style-name left_style_name\'>1</text:p>\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\'\n
+                    tal:content=\'python:line_dict["source_reference"]\'\n
+                    tal:attributes=\'text:style-name style_name\'>source_ref</text:p>\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\'\n
+                    tal:content=\'python:line_dict["reference"]\'\n
+                    tal:attributes=\'text:style-name style_name\'>ref</text:p>\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\'\n
+                    tal:content=\'python:line_dict["description"]\'\n
+                    tal:attributes=\'text:style-name left_style_name\'>desc</text:p>\n
+          </table:table-cell>\n
+          <table:table-cell table:style-name=\'Tableau1.A3\' office:value-type=\'float\'>\n
+            <text:p text:style-name=\'Table_20_Contents\'\n
+                    tal:content=\'python:line_dict["total_quantity"]\'\n
+                    tal:attributes=\'text:style-name right_style_name\'>qty</text:p>\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\'\n
+                    tal:content=\'python:line_dict["quantity_unit"]\'\n
+                    tal:attributes=\'text:style-name style_name\'>qty_u</text:p>\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\'\n
+                    tal:content=\'python:line_dict["stop_date"]\'\n
+                    tal:attributes=\'text:style-name style_name\'>stop_date</text:p>\n
+          </table:table-cell>\n
+          <table:table-cell table:style-name=\'Tableau1.A3\' office:value-type=\'float\'>\n
+            <text:p text:style-name=\'Table_20_Contents\'\n
+                    tal:content=\'python:line_dict["base_price"]\'\n
+                    tal:attributes=\'text:style-name right_style_name\'>base_price</text:p>\n
+          </table:table-cell>\n
+          <table:table-cell table:style-name=\'Tableau1.A3\' office:value-type=\'float\'>\n
+            <text:p text:style-name=\'Table_20_Contents\'\n
+                    tal:content=\'python:line_dict["total_price"]\'\n
+                    tal:attributes=\'text:style-name right_style_name\'>total_price</text:p>\n
+          </table:table-cell>\n
+          </div>\n
+        </table:table-row>\n
+        <table:table-row table:style-name=\'Tableau1.5\'>\n
+          <table:table-cell table:style-name=\'Tableau1.A5\'\n
+                            table:number-columns-spanned=\'9\' office:value-type=\'string\'>\n
+            <table:table table:style-name=\'Tableau3\' table:name=\'Tableau3\'>\n
+              <table:table-column table:style-name=\'Tableau3.A\'/>\n
+              <table:table-column table:style-name=\'Tableau3.B\'/>\n
+              <table:table-column table:style-name=\'Tableau3.C\'/>\n
+              <table:table-column table:style-name=\'Tableau3.D\'/>\n
+              <table:table-column table:style-name=\'Tableau3.E\'/>\n
+              <table:table-row table:style-name=\'Tableau3.1\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.2\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.D2\' office:value-type=\'string\' tal:define=\'orig_string string:Total Excluding VAT; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                  <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                  <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.E2\' office:value-type=\'float\'>\n
+                  <text:p text:style-name=\'Table_20_Contents_20_Right\' tal:content=\'python:data_dict["total_price_novat"]\'>800.000,00</text:p>\n
+                </table:table-cell>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.3\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <tal:block tal:define="global total_vat_list python: []">\n
+                  <table:table-cell table:style-name=\'Tableau3.D3\'\n
+                                    office:value-type=\'string\'>\n
+                    <tal:block tal:repeat="vat python: data_dict[\'vat_list\']">\n
+                      <tal:block tal:define="orig_string python:vat.getResourceTitle(); en_string python:here.Base_translateString(orig_string, lang=\'en\'); my_string python:here.Base_translateString(orig_string)">\n
+                        <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                        <text:p text:style-name=\'Table_20_Heading\'\n
+                                tal:condition=\'python:my_string != en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                      </tal:block>\n
+                    </tal:block>\n
+                    <text:p text:style-name=\'Table_20_Heading\'\n
+                            tal:define="orig_string string:TAX; en_string python:here.Base_translateString(orig_string, lang=\'en\'); my_string python:here.Base_translateString(orig_string)"><span tal:replace="python: \'Total %s\' % (my_string)"/>:</text:p>\n
+                  </table:table-cell>\n
+                  <table:table-cell table:style-name=\'Tableau3.E3\'\n
+                                    office:value-type=\'float\'\n
+                                    tal:attributes="office:value python: sum(total_vat_list)">\n
+                    <tal:block tal:repeat="vat python: data_dict[\'vat_list\']">\n
+                      <text:p tal:define="vat_price python: vat.getPrice() * vat.getQuantity(); any python: total_vat_list.append(vat_price)"\n
+                              text:style-name=\'Table_20_Contents_20_Right\'\n
+                              tal:content="vat_price">2000</text:p>\n
+                    </tal:block>\n
+                      <text:p text:style-name=\'Table_20_Contents_20_Right\'\n
+                              tal:content="python: sum(total_vat_list)">2000</text:p>\n
+                  </table:table-cell>\n
+                </tal:block>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.2\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A2\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.D3\' office:value-type=\'string\' tal:define=\'orig_string string:Total Including VAT; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                  <text:p text:style-name=\'Table_20_Heading\'><span tal:replace=\'en_string\'/>:</text:p>\n
+                  <text:p text:style-name=\'Table_20_Heading\' tal:condition=\'python:my_string!=en_string\'><span tal:replace=\'my_string\'/>:</text:p>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.E3\' office:value-type=\'float\' tal:attributes="office:value python:data_dict[\'total_price_novat\'] + sum(total_vat_list)">\n
+                  <text:p text:style-name=\'Table_20_Contents_20_Right\'\n
+                          tal:content=\'python:data_dict["total_price_novat"] + sum(total_vat_list)\'>12345</text:p>\n
+                </table:table-cell>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.1\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.A1\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.6\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A6\' office:value-type=\'string\' tal:define=\'orig_string string:Notes; en_string python:here.Base_translateString(orig_string, lang="en"); my_string python:here.Base_translateString(orig_string)\'>\n
+                  <text:p text:style-name=\'P2\'><span tal:replace=\'en_string\'/><span tal:omit-tag=\'\' tal:condition=\'python:my_string!=en_string\'> / <span tal:replace=\'my_string\'/></span>:</text:p>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.B6\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.B6\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.B6\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+                <table:table-cell table:style-name=\'Tableau3.E6\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'Table_20_Contents\'/>\n
+                </table:table-cell>\n
+              </table:table-row>\n
+              <table:table-row table:style-name=\'Tableau3.7\'>\n
+                <table:table-cell table:style-name=\'Tableau3.A7\' table:number-columns-spanned=\'5\' office:value-type=\'string\'>\n
+                  <text:p text:style-name=\'P3\' tal:content=\'python:data_dict["description"]\'>my_description</text:p>\n
+                </table:table-cell>\n
+                <table:covered-table-cell/>\n
+                <table:covered-table-cell/>\n
+                <table:covered-table-cell/>\n
+                <table:covered-table-cell/>\n
+              </table:table-row>\n
+            </table:table>\n
+            <text:p text:style-name=\'Table_20_Contents\'/>\n
+          </table:table-cell>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+          <table:covered-table-cell/>\n
+        </table:table-row>\n
+      </table:table>\n
+      <text:p text:style-name=\'P4\'/>\n
+    </office:text>\n
+  </office:body>\n
+</office:document-content>
+
+]]></string> </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>application/vnd.oasis.opendocument.text</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Invoice_viewAsODT</string> </value>
+        </item>
+        <item>
+            <key> <string>ooo_stylesheet</string> </key>
+            <value> <string>Invoice_getODTStyleSheet</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2ee1fac7e3ecd6758ee33ca1aa78a27cd18d94da
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog.xml
@@ -0,0 +1,144 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ERP5Form" module="Products.ERP5Form.Form"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <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/>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>_owner</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>action</string> </key>
+            <value> <string>Invoice_viewAsODT</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>edit_order</string> </key>
+            <value>
+              <list/>
+            </value>
+        </item>
+        <item>
+            <key> <string>encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>enctype</string> </key>
+            <value> <string>multipart/form-data</string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <list>
+                <string>left</string>
+                <string>right</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>groups</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>left</string> </key>
+                    <value>
+                      <list>
+                        <string>your_target_language</string>
+                      </list>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>right</string> </key>
+                    <value>
+                      <list>
+                        <string>your_format</string>
+                      </list>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>Invoice_viewODTPrintDialog</string> </value>
+        </item>
+        <item>
+            <key> <string>method</string> </key>
+            <value> <string>POST</string> </value>
+        </item>
+        <item>
+            <key> <string>name</string> </key>
+            <value> <string>Base_viewODTPrintDialog</string> </value>
+        </item>
+        <item>
+            <key> <string>pt</string> </key>
+            <value> <string>form_dialog</string> </value>
+        </item>
+        <item>
+            <key> <string>row_length</string> </key>
+            <value> <int>4</int> </value>
+        </item>
+        <item>
+            <key> <string>stored_encoding</string> </key>
+            <value> <string>UTF-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Print Order</string> </value>
+        </item>
+        <item>
+            <key> <string>unicode_mode</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>update_action</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_format.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_format.xml
new file mode 100644
index 0000000000000000000000000000000000000000..474bcbd96cc532bd69deeff061885351d8fb4b2d
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_format.xml
@@ -0,0 +1,132 @@
+<?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>items</string>
+                <string>enabled</string>
+              </list>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>your_format</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>enabled</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>items</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </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>enabled</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>field_id</string> </key>
+                    <value> <string>your_format</string> </value>
+                </item>
+                <item>
+                    <key> <string>form_id</string> </key>
+                    <value> <string>Base_viewDialogFieldLibrary</string> </value>
+                </item>
+                <item>
+                    <key> <string>items</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>target</string> </key>
+                    <value> <string>Click to edit the target</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <tuple>
+        <global name="TALESMethod" module="Products.Formulator.TALESField"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string>python: here.Base_getConversionFormatItemList(base_content_type=\'application/vnd.oasis.opendocument.text\')</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_target_language.xml b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_target_language.xml
new file mode 100644
index 0000000000000000000000000000000000000000..78b5e2fe91260f14b4db22bbcec419458ceaebbf
--- /dev/null
+++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Invoice_viewODTPrintDialog/your_target_language.xml
@@ -0,0 +1,283 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <tuple>
+        <global name="ListField" module="Products.Formulator.StandardFields"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>your_target_language</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>required_not_found</string> </key>
+                    <value> <string>Input is required but no input given.</string> </value>
+                </item>
+                <item>
+                    <key> <string>unknown_selection</string> </key>
+                    <value> <string>You selected an item that was not in the list.</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>overrides</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>editable</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>enabled</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>external_validator</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>extra_item</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>first_item</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>items</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>size</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>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>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>extra_item</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>first_item</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>items</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>size</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <string></string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>values</string> </key>
+            <value>
+              <dictionary>
+                <item>
+                    <key> <string>alternate_name</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>css_class</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>default</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>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>extra_item</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>first_item</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>hidden</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>items</string> </key>
+                    <value>
+                      <list/>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>required</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>size</string> </key>
+                    <value> <int>1</int> </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value> <string>Language</string> </value>
+                </item>
+                <item>
+                    <key> <string>unicode</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+                <item>
+                    <key> <string>whitespace_preserve</string> </key>
+                    <value> <int>0</int> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <tuple>
+        <global name="TALESMethod" module="Products.Formulator.TALESField"/>
+        <tuple/>
+      </tuple>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_text</string> </key>
+            <value> <string>python: [(\'\', \'\')] + [(lang[\'title\'], lang[\'id\']) for lang in here.Localizer.get_languages_map()]</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_accounting/bt/change_log b/bt5/erp5_accounting/bt/change_log
index 14bb3e29ebb7a952a2c1c0408f4ea87356795d9e..913fb8685e92dc37a5893c1c2178c17bdb364763 100644
--- a/bt5/erp5_accounting/bt/change_log
+++ b/bt5/erp5_accounting/bt/change_log
@@ -1,3 +1,6 @@
+2008-3-16 nicolas
+* add Print action for Invoices
+
 2008-3-4 jerome
 * add a fast input to group accounting lines from invoice and corresponding payment.
 
diff --git a/bt5/erp5_accounting/bt/revision b/bt5/erp5_accounting/bt/revision
index 0bd049a9634083bb649713736462c9db8aeb8228..8e6862383d3ca1f23e51b1467e98ee692e765b43 100644
--- a/bt5/erp5_accounting/bt/revision
+++ b/bt5/erp5_accounting/bt/revision
@@ -1 +1 @@
-682
\ No newline at end of file
+684
\ No newline at end of file
diff --git a/bt5/erp5_accounting/bt/template_action_path_list b/bt5/erp5_accounting/bt/template_action_path_list
index 28e7e2a2c6542f5226ee6876d5851a4794e72cd9..c710adc835b98926c9e0748b3fb21e605920ba88 100644
--- a/bt5/erp5_accounting/bt/template_action_path_list
+++ b/bt5/erp5_accounting/bt/template_action_path_list
@@ -82,6 +82,7 @@ Sale Invoice Transaction | create_related_payment
 Sale Invoice Transaction | create_reversal
 Sale Invoice Transaction | destination_asset
 Sale Invoice Transaction | detail
+Sale Invoice Transaction | invoice_print
 Sale Invoice Transaction | jump_to_related_payment
 Sale Invoice Transaction | source_asset
 Sale Invoice Transaction | view
\ No newline at end of file