add COO
This commit is contained in:
@@ -280,6 +280,7 @@ def register():
|
||||
invoice.PurchaseReport,
|
||||
stock.ShipmentShippingReport,
|
||||
stock.ShipmentInsuranceReport,
|
||||
stock.ShipmentCOOReport,
|
||||
stock.ShipmentPackingListReport,
|
||||
module='purchase_trade', type_='report')
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@ class Configuration(ModelSingleton, ModelSQL, ModelView):
|
||||
'report_shipment_in_shipping', 'Shipping instructions'),
|
||||
('shipment_insurance_report_label', 'purchase_trade',
|
||||
'report_shipment_in_insurance', 'Insurance'),
|
||||
('shipment_coo_report_label', 'purchase_trade',
|
||||
'report_shipment_in_coo', 'COO'),
|
||||
('shipment_packing_list_report_label', 'purchase_trade',
|
||||
'report_shipment_in_packing_list', 'Packing List'),
|
||||
)
|
||||
@@ -52,6 +54,8 @@ class Configuration(ModelSingleton, ModelSQL, ModelView):
|
||||
shipment_shipping_report_label = fields.Char("Shipping Menu Label")
|
||||
shipment_insurance_report_template = fields.Char("Insurance Template")
|
||||
shipment_insurance_report_label = fields.Char("Insurance Menu Label")
|
||||
shipment_coo_report_template = fields.Char("COO Template")
|
||||
shipment_coo_report_label = fields.Char("COO Menu Label")
|
||||
shipment_packing_list_report_template = fields.Char("Packing List Template")
|
||||
shipment_packing_list_report_label = fields.Char(
|
||||
"Packing List Menu Label")
|
||||
|
||||
@@ -792,6 +792,86 @@ class ShipmentIn(metaclass=PoolMeta):
|
||||
def report_packing_net_weight(self):
|
||||
net, _ = self._get_report_weight_totals()
|
||||
return self._format_report_quantity(net)
|
||||
|
||||
@property
|
||||
def report_coo_exporter(self):
|
||||
company = getattr(self, 'company', None)
|
||||
party = getattr(company, 'party', None) if company else None
|
||||
if not party:
|
||||
return ''
|
||||
address = party.address_get() if hasattr(party, 'address_get') else None
|
||||
lines = [getattr(party, 'rec_name', None) or getattr(party, 'name', None) or '']
|
||||
if address and getattr(address, 'full_address', None):
|
||||
lines.append(address.full_address)
|
||||
return '\n'.join(filter(None, lines))
|
||||
|
||||
@property
|
||||
def report_coo_consignee(self):
|
||||
trade = self._get_report_trade()
|
||||
party = getattr(trade, 'party', None) if trade else None
|
||||
if not party:
|
||||
return ''
|
||||
address = party.address_get() if hasattr(party, 'address_get') else None
|
||||
lines = [getattr(party, 'rec_name', None) or getattr(party, 'name', None) or '']
|
||||
if address and getattr(address, 'full_address', None):
|
||||
lines.append(address.full_address)
|
||||
return '\n'.join(filter(None, lines))
|
||||
|
||||
@property
|
||||
def report_coo_number(self):
|
||||
return getattr(self, 'reference', None) or self.number or ''
|
||||
|
||||
@property
|
||||
def report_coo_transport(self):
|
||||
parts = []
|
||||
if self.bl_number:
|
||||
parts.append(f"B/L {self.bl_number}")
|
||||
ship_name = self.report_packing_ship_name
|
||||
if ship_name:
|
||||
parts.append(ship_name)
|
||||
if self.booking:
|
||||
parts.append(f"Booking {self.booking}")
|
||||
return ' - '.join(parts)
|
||||
|
||||
@property
|
||||
def report_coo_origin_country(self):
|
||||
return self.report_packing_origin or ''
|
||||
|
||||
@property
|
||||
def report_coo_observations(self):
|
||||
parts = []
|
||||
contract = self.report_packing_contract_number
|
||||
if contract:
|
||||
parts.append(f"Contract: {contract}")
|
||||
if self.note:
|
||||
parts.append(self.note)
|
||||
return '\n'.join(filter(None, parts))
|
||||
|
||||
@property
|
||||
def report_coo_goods_description(self):
|
||||
parts = [self.report_product_name, self.report_product_description]
|
||||
if self.container:
|
||||
container_numbers = ', '.join(
|
||||
filter(None, (getattr(c, 'container_no', None) or '' for c in self.container)))
|
||||
if container_numbers:
|
||||
parts.append(f"Container(s): {container_numbers}")
|
||||
return '\n'.join(filter(None, parts))
|
||||
|
||||
@property
|
||||
def report_coo_net_weight(self):
|
||||
return self.report_packing_net_weight
|
||||
|
||||
@property
|
||||
def report_coo_gross_weight(self):
|
||||
return self.report_packing_gross_weight
|
||||
|
||||
@property
|
||||
def report_coo_issue_date(self):
|
||||
Date = Pool().get('ir.date')
|
||||
today = Date.today()
|
||||
if not today:
|
||||
return ''
|
||||
return today.strftime('%d-%m-%Y')
|
||||
|
||||
def get_rec_name(self, name=None):
|
||||
if self.number:
|
||||
@@ -2310,3 +2390,12 @@ class ShipmentPackingListReport(ShipmentTemplateReportMixin, BaseSupplierShippin
|
||||
def _resolve_configured_report_path(cls, action):
|
||||
return cls._resolve_template_path(
|
||||
'shipment_packing_list_report_template', 'stock')
|
||||
|
||||
|
||||
class ShipmentCOOReport(ShipmentTemplateReportMixin, BaseSupplierShipping):
|
||||
__name__ = 'stock.shipment.in.coo'
|
||||
|
||||
@classmethod
|
||||
def _resolve_configured_report_path(cls, action):
|
||||
return cls._resolve_template_path(
|
||||
'shipment_coo_report_template', 'stock')
|
||||
|
||||
@@ -78,6 +78,18 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="action" ref="report_shipment_in_insurance"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.report" id="report_shipment_in_coo">
|
||||
<field name="name">COO</field>
|
||||
<field name="model">stock.shipment.in</field>
|
||||
<field name="report_name">stock.shipment.in.coo</field>
|
||||
<field name="report">stock/coo.fodt</field>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="report_shipment_in_coo_keyword">
|
||||
<field name="keyword">form_print</field>
|
||||
<field name="model">stock.shipment.in,-1</field>
|
||||
<field name="action" ref="report_shipment_in_coo"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.report" id="report_shipment_in_packing_list">
|
||||
<field name="name">Packing List</field>
|
||||
<field name="model">stock.shipment.in</field>
|
||||
|
||||
@@ -1077,12 +1077,14 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
'shipment report paths are resolved from purchase_trade configuration'
|
||||
shipping_report = Pool().get('stock.shipment.in.shipping', type='report')
|
||||
insurance_report = Pool().get('stock.shipment.in.insurance', type='report')
|
||||
coo_report = Pool().get('stock.shipment.in.coo', type='report')
|
||||
packing_report = Pool().get('stock.shipment.in.packing_list', type='report')
|
||||
config_model = Mock()
|
||||
config_model.search.return_value = [
|
||||
Mock(
|
||||
shipment_shipping_report_template='si_custom.fodt',
|
||||
shipment_insurance_report_template='insurance_custom.fodt',
|
||||
shipment_coo_report_template='coo_custom.fodt',
|
||||
shipment_packing_list_report_template='packing_list_custom.fodt',
|
||||
)
|
||||
]
|
||||
@@ -1104,6 +1106,12 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
'report': 'stock/insurance.fodt',
|
||||
}),
|
||||
'stock/insurance_custom.fodt')
|
||||
self.assertEqual(
|
||||
coo_report._resolve_configured_report_path({
|
||||
'name': 'COO',
|
||||
'report': 'stock/coo.fodt',
|
||||
}),
|
||||
'stock/coo_custom.fodt')
|
||||
self.assertEqual(
|
||||
packing_report._resolve_configured_report_path({
|
||||
'name': 'Packing List',
|
||||
@@ -1125,6 +1133,7 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
purchase_report_label='',
|
||||
shipment_shipping_report_label='',
|
||||
shipment_insurance_report_label='',
|
||||
shipment_coo_report_label='Certificate of Origin',
|
||||
shipment_packing_list_report_label='',
|
||||
)
|
||||
action_sale = Mock(spec=['name'])
|
||||
@@ -1147,6 +1156,8 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
action_shipping.name = 'Shipping instructions'
|
||||
action_insurance = Mock(spec=['name'])
|
||||
action_insurance.name = 'Insurance'
|
||||
action_coo = Mock(spec=['name'])
|
||||
action_coo.name = 'COO'
|
||||
action_packing = Mock(spec=['name'])
|
||||
action_packing.name = 'Packing List'
|
||||
actions = {
|
||||
@@ -1160,7 +1171,8 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
8: action_purchase,
|
||||
9: action_shipping,
|
||||
10: action_insurance,
|
||||
11: action_packing,
|
||||
11: action_coo,
|
||||
12: action_packing,
|
||||
}
|
||||
|
||||
model_data = Mock()
|
||||
@@ -1188,6 +1200,7 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
[actions[2]], {'name': 'Draft'},
|
||||
[actions[7]], {'name': 'Packing Slip'},
|
||||
[actions[6]], {'name': 'Wire Order'},
|
||||
[actions[11]], {'name': 'Certificate of Origin'},
|
||||
))
|
||||
|
||||
def test_shipment_insurance_helpers_use_fee_and_controller(self):
|
||||
|
||||
@@ -51,6 +51,10 @@
|
||||
<field name="shipment_insurance_report_template" colspan="3"/>
|
||||
<label name="shipment_insurance_report_label"/>
|
||||
<field name="shipment_insurance_report_label" colspan="3"/>
|
||||
<label name="shipment_coo_report_template"/>
|
||||
<field name="shipment_coo_report_template" colspan="3"/>
|
||||
<label name="shipment_coo_report_label"/>
|
||||
<field name="shipment_coo_report_label" colspan="3"/>
|
||||
<label name="shipment_packing_list_report_template"/>
|
||||
<field name="shipment_packing_list_report_template" colspan="3"/>
|
||||
<label name="shipment_packing_list_report_label"/>
|
||||
|
||||
328
modules/stock/coo.fodt
Normal file
328
modules/stock/coo.fodt
Normal file
@@ -0,0 +1,328 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<office:document
|
||||
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
|
||||
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
|
||||
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
|
||||
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
|
||||
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
|
||||
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
|
||||
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
|
||||
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
|
||||
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
|
||||
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
|
||||
xmlns:math="http://www.w3.org/1998/Math/MathML"
|
||||
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
|
||||
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
|
||||
xmlns:ooo="http://openoffice.org/2004/office"
|
||||
xmlns:ooow="http://openoffice.org/2004/writer"
|
||||
xmlns:oooc="http://openoffice.org/2004/calc"
|
||||
xmlns:dom="http://www.w3.org/2001/xml-events"
|
||||
xmlns:xforms="http://www.w3.org/2002/xforms"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
|
||||
office:version="1.3"
|
||||
office:mimetype="application/vnd.oasis.opendocument.text">
|
||||
|
||||
<!-- ═══════════════════════════════ STYLES ═══════════════════════════════ -->
|
||||
<office:styles>
|
||||
|
||||
<!-- Default paragraph style -->
|
||||
<style:default-style style:family="paragraph">
|
||||
<style:paragraph-properties fo:hyphenation-ladder-count="no-limit"
|
||||
style:text-autospace="ideograph-alpha"
|
||||
style:punctuation-wrap="hanging"
|
||||
style:line-break="strict"
|
||||
style:writing-mode="lr-tb"/>
|
||||
<style:text-properties fo:font-size="8pt"
|
||||
fo:font-family="Arial, Helvetica, sans-serif"
|
||||
style:font-size-asian="8pt"
|
||||
style:font-size-complex="8pt"/>
|
||||
</style:default-style>
|
||||
|
||||
<!-- Standard paragraph -->
|
||||
<style:style style:name="Standard" style:family="paragraph" style:class="text">
|
||||
<style:text-properties fo:font-size="8pt" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Cell label style (small, bold, multilingual) -->
|
||||
<style:style style:name="CellLabel" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:text-properties fo:font-size="7pt" fo:font-weight="bold" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Cell sublabel style (small italic, secondary languages) -->
|
||||
<style:style style:name="CellSubLabel" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:text-properties fo:font-size="6.5pt" fo:font-style="italic" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Title style (big, bold) -->
|
||||
<style:style style:name="DocTitle" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="left"/>
|
||||
<style:text-properties fo:font-size="12pt" fo:font-weight="bold" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Confederation title style -->
|
||||
<style:style style:name="ConfTitle" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="left"/>
|
||||
<style:text-properties fo:font-size="9pt" fo:font-weight="bold" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Footer text style -->
|
||||
<style:style style:name="FooterText" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="center"/>
|
||||
<style:text-properties fo:font-size="7.5pt" fo:font-family="Arial"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Page layout -->
|
||||
<style:page-layout style:name="PageLayout">
|
||||
<style:page-layout-properties fo:page-width="21.001cm" fo:page-height="29.7cm"
|
||||
style:print-orientation="portrait"
|
||||
fo:margin-top="1.0cm" fo:margin-bottom="1.0cm"
|
||||
fo:margin-left="1.2cm" fo:margin-right="1.2cm"
|
||||
style:writing-mode="lr-tb"/>
|
||||
</style:page-layout>
|
||||
|
||||
<!-- Master page -->
|
||||
<style:master-page style:name="Standard" style:page-layout-name="PageLayout"/>
|
||||
|
||||
<!-- Table styles -->
|
||||
<style:style style:name="MainTable" style:family="table">
|
||||
<style:table-properties style:width="18.601cm" fo:margin-left="0cm"/>
|
||||
</style:style>
|
||||
|
||||
<style:style style:name="ColLeft" style:family="table-column">
|
||||
<style:table-column-properties style:column-width="9.3cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="ColRight" style:family="table-column">
|
||||
<style:table-column-properties style:column-width="9.3cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="ColNarrow" style:family="table-column">
|
||||
<style:table-column-properties style:column-width="3.5cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="ColWide" style:family="table-column">
|
||||
<style:table-column-properties style:column-width="11.6cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="ColNoNum" style:family="table-column">
|
||||
<style:table-column-properties style:column-width="2.1cm"/>
|
||||
</style:style>
|
||||
|
||||
<!-- Cell styles -->
|
||||
<style:style style:name="CellBorder" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border="0.05cm solid #000000"
|
||||
style:vertical-align="top"/>
|
||||
</style:style>
|
||||
<style:style style:name="CellBorderCenter" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border="0.05cm solid #000000"
|
||||
style:vertical-align="middle"/>
|
||||
</style:style>
|
||||
<style:style style:name="CellNoBorderTop" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border-left="0.05cm solid #000000"
|
||||
fo:border-right="0.05cm solid #000000"
|
||||
fo:border-bottom="0.05cm solid #000000"
|
||||
fo:border-top="none"
|
||||
style:vertical-align="top"/>
|
||||
</style:style>
|
||||
<style:style style:name="CellTall" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border="0.05cm solid #000000"
|
||||
style:vertical-align="top"
|
||||
style:min-row-height="6cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="CellTallRight" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border="0.05cm solid #000000"
|
||||
style:vertical-align="bottom"
|
||||
style:min-row-height="6cm"/>
|
||||
</style:style>
|
||||
<style:style style:name="CellSignature" style:family="table-cell">
|
||||
<style:table-cell-properties fo:padding="0.15cm"
|
||||
fo:border="0.05cm solid #000000"
|
||||
style:vertical-align="bottom"
|
||||
style:min-row-height="3.5cm"/>
|
||||
</style:style>
|
||||
|
||||
</office:styles>
|
||||
|
||||
<!-- ═══════════════════════════════ AUTOMATIC STYLES ═══════════════════════════════ -->
|
||||
<office:automatic-styles>
|
||||
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="right"/>
|
||||
</style:style>
|
||||
<style:style style:name="P2" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="center"/>
|
||||
</style:style>
|
||||
<style:style style:name="P3" style:family="paragraph" style:parent-style-name="Standard">
|
||||
<style:paragraph-properties fo:text-align="center"/>
|
||||
<style:text-properties fo:font-size="7pt" fo:font-style="italic"/>
|
||||
</style:style>
|
||||
</office:automatic-styles>
|
||||
|
||||
<!-- ═══════════════════════════════ BODY ═══════════════════════════════ -->
|
||||
<office:body>
|
||||
<office:text>
|
||||
|
||||
<!-- ══════════════════════════════════════════════════════════════
|
||||
MAIN TABLE — mirrors the official Swiss CoO layout
|
||||
══════════════════════════════════════════════════════════════ -->
|
||||
<table:table table:name="COO" table:style-name="MainTable">
|
||||
|
||||
<!-- Column definitions -->
|
||||
<table:table-column table:style-name="ColLeft"/>
|
||||
<table:table-column table:style-name="ColRight"/>
|
||||
|
||||
<!-- ─── ROW 1 : Exporter (left) | Title + No. (right) ─── -->
|
||||
<table:table-row>
|
||||
<!-- Exporter -->
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Exportateur</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Exporteur / Esportatore / Exporter</text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_exporter or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
</table:table-cell>
|
||||
<!-- Title block + No. -->
|
||||
<table:table-cell table:style-name="CellBorderCenter" office:value-type="string">
|
||||
<!-- No. line at top right -->
|
||||
<text:p text:style-name="P1"><text:span>No. / Nr. : <text:placeholder text:placeholder-type="text"><records[0].report_coo_number or ''></text:placeholder></text:span></text:p>
|
||||
<text:p text:style-name="DocTitle">CERTIFICAT D'ORIGINE</text:p>
|
||||
<text:p text:style-name="DocTitle">URSPRUNGSZEUGNIS</text:p>
|
||||
<text:p text:style-name="DocTitle">CERTIFICATO D'ORIGINE</text:p>
|
||||
<text:p text:style-name="DocTitle">CERTIFICATE OF ORIGIN</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
<!-- ─── ROW 2 : Consignee (left) | Swiss Confederation (right) ─── -->
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Destinataire</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Empfänger / Destinatario / Consignee</text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_consignee or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="CellBorderCenter" office:value-type="string">
|
||||
<text:p text:style-name="ConfTitle">CONFÉDÉRATION SUISSE</text:p>
|
||||
<text:p text:style-name="ConfTitle">SCHWEIZERISCHE EIDGENOSSENSCHAFT</text:p>
|
||||
<text:p text:style-name="ConfTitle">CONFEDERAZIONE SVIZZERA</text:p>
|
||||
<text:p text:style-name="ConfTitle">SWISS CONFEDERATION</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
<!-- ─── ROW 3 : Transport info (left) | Country of origin + Observations (right, split) ─── -->
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Informations relatives au transport (mention facultative)</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Angaben über die Beförderung (Ausfüllung freigestellt)</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Informazioni riguardanti il trasporto (indicazione facoltativa)</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Particulars of transport (optional declaration)</text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_transport or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Pays d'origine</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Ursprungsland / Paese d'origine / Country of origin</text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_origin_country or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="CellLabel">Observations</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Bemerkungen / Osservazioni / Observations</text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_observations or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
</table:table>
|
||||
|
||||
<!-- ══════════════════════════════════════════════════════════════
|
||||
GOODS TABLE — 3 columns: Marks/goods | Net weight | Gross weight
|
||||
══════════════════════════════════════════════════════════════ -->
|
||||
<table:table table:name="Goods" table:style-name="MainTable">
|
||||
<table:table-column table:style-name="ColWide"/>
|
||||
<table:table-column table:style-name="ColNarrow"/>
|
||||
|
||||
<!-- Header row -->
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Marques, numéros, nombre et nature des colis ; désignation des marchandises</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Zeichen, Nummern, Anzahl und Art der Packstücke; Warenbezeichnung</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Marche, numeri, numero e natura dei colli; designazione delle merci</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Marks, numbers, number and kind of packages; description of the goods</text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">Poids net</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Nettogewicht</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Peso netto</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Net weight</text:p>
|
||||
<text:p text:style-name="CellSubLabel">kg, l, m², etc.</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
<!-- Goods description rows — tall empty cells -->
|
||||
<table:table-row table:style-name="ro1">
|
||||
<table:table-cell table:style-name="CellTall" office:value-type="string">
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_goods_description or ''></text:placeholder></text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="CellTall" office:value-type="string">
|
||||
<!-- Poids brut at bottom of net weight column -->
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_net_weight or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"><text:placeholder text:placeholder-type="text"><records[0].report_coo_gross_weight or ''></text:placeholder></text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="CellLabel">Poids brut</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Bruttogewicht</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Peso lordo</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Gross weight</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
</table:table>
|
||||
|
||||
<!-- ══════════════════════════════════════════════════════════════
|
||||
CERTIFICATION BLOCK
|
||||
══════════════════════════════════════════════════════════════ -->
|
||||
<table:table table:name="Cert" table:style-name="MainTable">
|
||||
<table:table-column table:style-name="ColLeft"/>
|
||||
<table:table-column table:style-name="ColRight"/>
|
||||
|
||||
<!-- Certification statement -->
|
||||
<table:table-row>
|
||||
<table:table-cell table:number-columns-spanned="2" table:style-name="CellBorder" office:value-type="string">
|
||||
<text:p text:style-name="CellLabel">La Chambre de commerce soussignée certifie l'origine des marchandises désignées ci-dessus</text:p>
|
||||
<text:p text:style-name="CellSubLabel">Die unterzeichnete Handelskammer bescheinigt den Ursprung oben bezeichneter Ware</text:p>
|
||||
<text:p text:style-name="CellSubLabel">La sottoscritta Camera di commercio certifica l'origine delle merci summenzionate</text:p>
|
||||
<text:p text:style-name="CellSubLabel">The undersigned Chamber of commerce certifies the origin of the above mentioned goods</text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
<!-- Signature row: date left | Chamber seal + signature right -->
|
||||
<table:table-row>
|
||||
<table:table-cell table:style-name="CellSignature" office:value-type="string">
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="CellLabel">Genève, le <text:placeholder text:placeholder-type="text"><records[0].report_coo_issue_date or ''></text:placeholder></text:p>
|
||||
</table:table-cell>
|
||||
<table:table-cell table:style-name="CellSignature" office:value-type="string">
|
||||
<text:p text:style-name="FooterText">Chambre de commerce, d'industrie et des services de Genève</text:p>
|
||||
<text:p text:style-name="FooterText">Genfer Industrie-, Dienstleistungs- und Handelskammer</text:p>
|
||||
<text:p text:style-name="FooterText">Camera di commercio, dell'industria e dei servizi di Ginevra</text:p>
|
||||
<text:p text:style-name="FooterText">Chamber of commerce, industry and services of Geneva</text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
<text:p text:style-name="Standard"> </text:p>
|
||||
</table:table-cell>
|
||||
</table:table-row>
|
||||
|
||||
</table:table>
|
||||
|
||||
</office:text>
|
||||
</office:body>
|
||||
</office:document>
|
||||
Reference in New Issue
Block a user