Files
public/l10n_ru_upd_xml/reports/upd_report.xml

344 lines
21 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<template id="demo_report_xml_view">
<t t-foreach="docs" t-as="o">
<!-- Multicompany -->
<t t-if="o and o.company_id">
<t t-set="company" t-value="o.company_id"/>
</t>
<t t-elif="not o or not o.company_id">
<t t-set="company" t-value="res_company"/>
</t>
<t t-set="pid" t-value="o and o.partner_id and (o.partner_id.parent_id or o.partner_id) or False"/>
<Файл t-att="{
'ИдФайл': o and o.edi and (o.edi + '_0_0_0_0_0_00') or '',
'ВерсФорм': '5.03',
'ВерсПрог': 'Odoo19'
}">
<Документ t-att="{
'КНД': '1115131',
'Функция': 'СЧФДОП',
'ПоФактХЖ': 'Документ об отгрузке товаров (выполнении работ), передаче имущественных прав (документ об оказании услуг)',
'НаимДокОпр': 'Счет-фактура и документ об отгрузке товаров (выполнении работ), передаче имущественных прав (документ об оказании услуг)',
'ДатаИнфПр': time.strftime('%d.%m.%Y'),
'ВремИнфПр': time.strftime('%H.%M.%S'),
'НаимЭконСубСост': company and company.name or ''
}">
<СвСчФакт t-att="{
'НомерДок': o and (o.invoice_origin or o.name) or '',
'ДатаДок': o and o.invoice_date and o.invoice_date.strftime('%d.%m.%Y') or ''
}">
<СвПрод t-att="{'ОКПО': company and company.okpo or ''}">
<ИдСв>
<t t-if="company and company.inn and len(company.inn) == 10">
<СвЮЛУч t-att="{
'НаимОрг': company.name or '',
'ИННЮЛ': company.inn or '',
'КПП': company.kpp or ''
}"/>
</t>
<t t-elif="company and company.inn and len(company.inn) == 12">
<СвИП t-att="{
'ИННФЛ': company.inn or '',
'ИныеСвед': company.name or ''
}">
<ФИО t-att="{
'Фамилия': company.partner_id and company.partner_id.last_name_IP or '',
'Имя': company.partner_id and company.partner_id.first_name_IP or '',
'Отчество': company.partner_id and company.partner_id.middle_name_IP or ''
}"/>
</СвИП>
</t>
</ИдСв>
<Адрес>
<АдрИнф t-att="{
'КодСтр': '643',
'НаимСтран': 'Российская Федерация',
'АдрТекст': (company.city or '') + ', ' + (company.street or '')
}"/>
</Адрес>
</СвПрод>
<t t-if="o and o.only_service == False">
<ГрузОт>
<ГрузОтпр>
<t t-set="gruzootpr" t-value="o.gruzootpr or company.partner_id"/>
<t t-set="gruzootpr" t-value="gruzootpr and (gruzootpr.parent_id or gruzootpr)"/>
<ИдСв>
<t t-if="gruzootpr and gruzootpr.inn and len(gruzootpr.inn) == 10">
<СвЮЛУч t-att="{
'НаимОрг': gruzootpr.name or '',
'ИННЮЛ': gruzootpr.inn or '',
'КПП': gruzootpr.kpp or ''
}"/>
</t>
<t t-elif="gruzootpr and gruzootpr.inn and len(gruzootpr.inn) == 12">
<СвИП t-att="{
'ИННФЛ': gruzootpr.inn or '',
'ИныеСвед': gruzootpr.name or ''
}">
<ФИО t-att="{
'Фамилия': gruzootpr.last_name_IP or '',
'Имя': gruzootpr.first_name_IP or '',
'Отчество': gruzootpr.middle_name_IP or ''
}"/>
</СвИП>
</t>
</ИдСв>
<Адрес>
<АдрИнф t-att="{
'КодСтр': '643',
'НаимСтран': 'Российская Федерация',
'АдрТекст': (gruzootpr.city or '') + ', ' + (gruzootpr.street or '')
}"/>
</Адрес>
</ГрузОтпр>
</ГрузОт>
<t t-set="gruzopol" t-value="o.gruzopol or pid"/>
<t t-set="gruzopol" t-value="gruzopol and (gruzopol.parent_id or gruzopol)"/>
<ГрузПолуч t-att="{'ОКПО': gruzopol and gruzopol.okpo or ''}">
<ИдСв>
<t t-if="gruzopol and gruzopol.inn and len(gruzopol.inn) == 10">
<СвЮЛУч t-att="{
'НаимОрг': gruzopol.name or '',
'ИННЮЛ': gruzopol.inn or '',
'КПП': gruzopol.kpp or ''
}"/>
</t>
<t t-elif="gruzopol and gruzopol.inn and len(gruzopol.inn) == 12">
<СвИП t-att="{
'ИННФЛ': gruzopol.inn or '',
'ИныеСвед': gruzopol.name or ''
}">
<ФИО t-att="{
'Фамилия': gruzopol.last_name_IP or '',
'Имя': gruzopol.first_name_IP or '',
'Отчество': gruzopol.middle_name_IP or ''
}"/>
</СвИП>
</t>
</ИдСв>
<Адрес>
<АдрИнф t-att="{
'КодСтр': '643',
'НаимСтран': 'Российская Федерация',
'АдрТекст': (gruzopol.city or '') + ', ' + (gruzopol.street or '')
}"/>
</Адрес>
</ГрузПолуч>
</t>
<t t-if="o and o.payment_num and o.payment_num != ''">
<СвПРД t-att="{
'НомерПРД': o.payment_num,
'ДатаПРД': o.payment_date or ''
}"/>
</t>
<t t-if="o and o.only_service == False">
<ДокПодтвОтгрНом
РеквНаимДок="Счет-фактура и документ об отгрузке товаров (выполнении работ), передаче имущественных прав (документ об оказании услуг)"
t-att="{
'РеквНомерДок': o.invoice_origin or o.name or '',
'РеквДатаДок': o.invoice_date and o.invoice_date.strftime('%d.%m.%Y') or ''
}"/>
</t>
<СвПокуп t-att="{'ОКПО': pid and pid.okpo or ''}">
<ИдСв>
<t t-if="pid and pid.inn and len(pid.inn) == 10">
<СвЮЛУч t-att="{
'НаимОрг': pid.name or '',
'ИННЮЛ': pid.inn or '',
'КПП': pid.kpp or ''
}"/>
</t>
<t t-elif="pid and pid.inn and len(pid.inn) == 12">
<СвИП t-att="{
'ИННФЛ': pid.inn or '',
'ИныеСвед': pid.name or ''
}">
<ФИО t-att="{
'Фамилия': pid.last_name_IP or '',
'Имя': pid.first_name_IP or '',
'Отчество': pid.middle_name_IP or ''
}"/>
</СвИП>
</t>
</ИдСв>
<Адрес>
<АдрИнф t-att="{
'КодСтр': '643',
'НаимСтран': 'Российская Федерация',
'АдрТекст': (pid.city or '') + ', ' + (pid.street or '')
}"/>
</Адрес>
</СвПокуп>
<ДенИзм КодОКВ="643" НаимОКВ="Российский рубль" />
</СвСчФакт>
<ТаблСчФакт>
<t t-set="total_price_subtotal" t-value="sum(line.price_subtotal for line in o.invoice_line_ids)"/>
<t t-set="total_price_total" t-value="sum(line.price_total for line in o.invoice_line_ids)"/>
<t t-set="total_tax_amount" t-value="total_price_total - total_price_subtotal"/>
<t t-foreach="o.invoice_line_ids" t-as="line">
<t t-set="tax_rate_raw">
<t t-if="line.tax_ids">
<t t-set="first_tax" t-value="line.tax_ids[0]"/>
<t t-if="first_tax.amount != 0">
<t t-esc="str(int(first_tax.amount)) + '%'"/>
</t>
<t t-else="">
<t t-esc="'без НДС'"/>
</t>
</t>
<t t-else="">
<t t-esc="'без НДС'"/>
</t>
</t>
<t t-set="tax_rate" t-value="tax_rate_raw.replace(' ', '').replace('\n', '').replace('\t', '')"/>
<t t-set="line_tax_amount" t-value="line.price_total - line.price_subtotal"/>
<СведТов t-att="{
'НомСтр': line_index+1,
'НаимТов': line.name or '',
'НаимЕдИзм': line.product_uom_id.name or '',
'КолТов': line.quantity or '',
'ЦенаТов': ('%.2f' % (line.price_subtotal / line.quantity if line.quantity else 0)) if line.quantity else '0.00',
'СтТовБезНДС': ('%.2f' % (line.price_subtotal or 0)),
'НалСт': tax_rate,
'СтТовУчНал': ('%.2f' % (line.price_total or 0))
}">
<ДопСведТов t-att="{
'КодТов': line.product_id and line.product_id.default_code or '',
'ГТИН': '0' + (line.product_id and line.product_id.barcode or '') if line.product_id and line.product_id.barcode else '',
'КодВидТов': line.product_id and line.product_id.hs_code or ''
}">
<t t-if="line.product_id and line.product_id.tracking == 'serial'">
<КрНаимСтрПр>Китай</КрНаимСтрПр>
<НомСредИдентТов>
<t t-foreach="line.sale_line_ids" t-as="line_order">
<t t-foreach="line_order.move_ids" t-as="line_move">
<t t-foreach="line_move.move_line_ids.filtered(lambda km: km.state=='done')" t-as="lot">
<t t-if="lot.lot_id and lot.lot_id.cz_code_id">
<КИЗ><t t-esc="lot.lot_id.cz_code_id.code_without_characters"/></КИЗ>
</t>
</t>
</t>
</t>
</НомСредИдентТов>
</t>
</ДопСведТов>
<Акциз>
<БезАкциз>без акциза</БезАкциз>
</Акциз>
<СумНал>
<t t-if="line_tax_amount != 0">
<СумНал><t t-esc="('%.2f' % line_tax_amount)"/></СумНал>
</t>
<t t-else="">
<БезНДС>без НДС</БезНДС>
</t>
</СумНал>
</СведТов>
</t>
<ВсегоОпл t-att="{
'СтТовБезНДСВсего': ('%.2f' % total_price_subtotal),
'СтТовУчНалВсего': ('%.2f' % total_price_total)
}">
<СумНалВсего>
<t t-if="total_tax_amount != 0">
<СумНал><t t-esc="('%.2f' % total_tax_amount)"/></СумНал>
</t>
<t t-else="">
<БезНДС>без НДС</БезНДС>
</t>
</СумНалВсего>
</ВсегоОпл>
</ТаблСчФакт>
<СвПродПер>
<СвПер t-att="{
'СодОпер': 'Товары или услуги по документу',
'ДатаПер': o.invoice_date and o.invoice_date.strftime('%d.%m.%Y') or ''
}">
<ОснПер t-att="{
'РеквНаимДок': 'Счет-фактура',
'РеквНомерДок': o.invoice_origin or o.name or '',
'РеквДатаДок': o.invoice_date and o.invoice_date.strftime('%d.%m.%Y') or ''
}"/>
<СвЛицПер>
<РабОргПрод t-att="{'Должность': o.kladov and o.kladov.partner_id and o.kladov.partner_id.function or ''}">
<t t-if="o.kladov and o.kladov.partner_id and o.kladov.partner_id.name">
<t t-set="name_parts" t-value="o.kladov.partner_id.name.split()"/>
<t t-if="len(name_parts) == 3">
<ФИО t-att="{
'Фамилия': name_parts[0],
'Имя': name_parts[1],
'Отчество': name_parts[2]
}"/>
</t>
<t t-else="">
<ФИО t-att="{
'Фамилия': name_parts[0] if name_parts else '',
'Имя': name_parts[1] if len(name_parts) > 1 else ''
}"/>
</t>
</t>
</РабОргПрод>
</СвЛицПер>
<Тран t-att="{'СвТран': o.transport or 'Без квитанции'}"/>
</СвПер>
</СвПродПер>
<Подписант t-att="{
'СпосПодтПолном': '1',
'Должн': company.chief_id and company.chief_id.function or ''
}">
<t t-if="company.inn and len(company.inn) == 10">
<t t-if="company.chief_id and company.chief_id.second_name">
<ФИО t-att="{
'Фамилия': company.chief_id.last_name or '',
'Имя': company.chief_id.first_name or '',
'Отчество': company.chief_id.second_name or ''
}"/>
</t>
<t t-else="">
<ФИО t-att="{
'Фамилия': company.chief_id and company.chief_id.last_name or '',
'Имя': company.chief_id and company.chief_id.first_name or ''
}"/>
</t>
</t>
<t t-elif="company.inn and len(company.inn) == 12">
<t t-if="company.partner_id and company.partner_id.middle_name_IP">
<ФИО t-att="{
'Фамилия': company.partner_id.last_name_IP or '',
'Имя': company.partner_id.first_name_IP or '',
'Отчество': company.partner_id.middle_name_IP or ''
}"/>
</t>
<t t-else="">
<ФИО t-att="{
'Фамилия': company.partner_id and company.partner_id.last_name_IP or '',
'Имя': company.partner_id and company.partner_id.first_name_IP or ''
}"/>
</t>
</t>
</Подписант>
</Документ>
</Файл>
</t>
</template>
</odoo>