From 38d49cac611561043d5057f589b04f952a5f3986 Mon Sep 17 00:00:00 2001 From: Ivan shirokikh Date: Fri, 21 May 2021 04:25:00 +0400 Subject: [PATCH] [IMP] extract function for docx report printed from docx template --- .gitignore | 1 + README.md | 10 +- TODOLIST.md | 11 - __init__.py | 1 - __manifest__.py | 25 +- data/fields_default.xml | 1114 ------------ data/payment_terms.xml | 27 - i18n/client_contracts.pot | 1561 ----------------- i18n/ru.po | 1140 ------------ models/__init__.py | 10 +- models/account_invoice.py | 67 - models/ir_actions_report.py | 183 ++ models/product_product.py | 12 - models/res_partner.py | 73 - models/res_partner_contract.py | 157 -- models/res_partner_contract_annex.py | 236 --- models/res_partner_contract_field.py | 33 - .../res_partner_contract_field_transient.py | 38 - models/res_partner_document_template.py | 50 - models/sale_order.py | 95 - security/ir.model.access.csv | 12 - utils/__init__.py | 2 - utils/docxtpl.py | 26 - utils/misc.py | 11 - views/ir_actions_report_views.xml | 18 + views/res_partner.xml | 92 - views/res_partner_contract.xml | 106 -- views/res_partner_contract_annex.xml | 51 - views/res_partner_contract_field.xml | 20 - views/res_partner_document_template.xml | 17 - views/sale_order.xml | 25 - wizard/__init__.py | 1 - wizard/res_partner_contract_wizard.py | 369 ---- wizard/res_partner_contract_wizard.xml | 42 - Шаблон_КП.docx | Bin 112684 -> 0 bytes 35 files changed, 211 insertions(+), 5425 deletions(-) delete mode 100755 TODOLIST.md delete mode 100755 data/fields_default.xml delete mode 100755 data/payment_terms.xml delete mode 100644 i18n/client_contracts.pot delete mode 100755 i18n/ru.po delete mode 100755 models/account_invoice.py create mode 100644 models/ir_actions_report.py delete mode 100644 models/product_product.py delete mode 100755 models/res_partner.py delete mode 100755 models/res_partner_contract.py delete mode 100755 models/res_partner_contract_annex.py delete mode 100755 models/res_partner_contract_field.py delete mode 100755 models/res_partner_contract_field_transient.py delete mode 100755 models/res_partner_document_template.py delete mode 100755 models/sale_order.py delete mode 100755 security/ir.model.access.csv delete mode 100755 utils/docxtpl.py delete mode 100755 utils/misc.py create mode 100755 views/ir_actions_report_views.xml delete mode 100755 views/res_partner.xml delete mode 100755 views/res_partner_contract.xml delete mode 100755 views/res_partner_contract_annex.xml delete mode 100755 views/res_partner_contract_field.xml delete mode 100755 views/res_partner_document_template.xml delete mode 100755 views/sale_order.xml delete mode 100755 wizard/__init__.py delete mode 100755 wizard/res_partner_contract_wizard.py delete mode 100755 wizard/res_partner_contract_wizard.xml delete mode 100644 Шаблон_КП.docx diff --git a/.gitignore b/.gitignore index 9b6acd2..dcb7ddb 100755 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.pyc idea/ +.DS_store diff --git a/README.md b/README.md index 1ce42aa..18ccc54 100755 --- a/README.md +++ b/README.md @@ -1,9 +1 @@ -# Account Contracts - -## Summary -Create and storage form for contracts. Generate a print form of document of contract. - -## Features -- Contract management: create, sign, close, renew -- Create .docx form of contract using any document template -- Fields in document fill from Odoo models +# DOCS report diff --git a/TODOLIST.md b/TODOLIST.md deleted file mode 100755 index 01f3874..0000000 --- a/TODOLIST.md +++ /dev/null @@ -1,11 +0,0 @@ -# TODO LIST - -## Features - -## Fixes - - Change all `parents` to `genitive` - - Merge `document_type` and `template_type` in `res.partner.document.template` - - Change `annex_number` to `annex_counter` - -## Big feature - - Separate XML actions that generates transient fields for all types of documents diff --git a/__init__.py b/__init__.py index 9b42961..0650744 100755 --- a/__init__.py +++ b/__init__.py @@ -1,2 +1 @@ from . import models -from . import wizard diff --git a/__manifest__.py b/__manifest__.py index 4995f1a..15bba6b 100755 --- a/__manifest__.py +++ b/__manifest__.py @@ -1,28 +1,17 @@ # -*- coding: utf-8 -*- { - "name": "Client Contracts", + "name": "DOCX report", "summary": """ - Print forms for contracts with clients""", - "description": """ - Module for storing and creating print forms for contracts. - """, + Print docx report from docx template""", + "description": """""", "author": "RYDLAB", "website": "http://rydlab.ru", - "category": "Invoicing & Payments", - "version": "14.0.1.0.0", - "depends": ["base", "contacts", "hr", "l10n_ru", "sale", "sale_margin"], + "category": "Technical", + "version": "0.0.1", + "depends": ["base"], "external_dependencies": {"python": ["docxtpl", "num2words"]}, "data": [ "data/assets_extension.xml", - "data/fields_default.xml", - "data/payment_terms.xml", - "security/ir.model.access.csv", - "views/res_partner_contract.xml", - "views/res_partner_contract_annex.xml", - "views/res_partner_contract_field.xml", - "views/res_partner_document_template.xml", - "views/res_partner.xml", - "views/sale_order.xml", - "wizard/res_partner_contract_wizard.xml", + "views/ir_actions_report_views.xml", ], } diff --git a/data/fields_default.xml b/data/fields_default.xml deleted file mode 100755 index f88fbfa..0000000 --- a/data/fields_default.xml +++ /dev/null @@ -1,1114 +0,0 @@ - - - - - - - Generate Context for Contract - - - code - - -# Aliases -self = record # res.partner.contract - -partner = self.partner_id # res.partner -seller = self.company_id.partner_id - -# Functions -_ = self._ -get_date = self.get_date - -# Parse date -months = ["", - "января", "февраля", "марта", "апреля", - "мая", "июня", "июля", "августа", - "сентября", "октября", "ноября", "декабря", -] -date = get_date() -dd = date.day -mm = date.month -yyyy = date.year -yy = yyyy % 100 -MM = months[mm] - -dd = dd if dd // 10 else '0{}'.format(dd) -mm = mm if mm // 10 else '0{}'.format(mm) - -# ctx keys must be decalared in this xml with id equal to "contract_field_{technical_name}" -ctx = { - "contract_number": self.name, - - "dd": dd, - "mm": mm, - "MM": MM, - "yy": yy, - "yyyy": yyyy, - - "seller_name": seller.name_write, - "seller_company_form": _(dict(seller._fields['company_form'].selection).get(seller.company_form)), - "seller_representer_name": seller.representative_id.name, - "seller_representer_name_parent": seller.representative_id.name_genitive, - "seller_representer_name_initials": seller.representative_id.name_initials, - "seller_representer_function": seller.representative_id.function, - "seller_representer_function_parent": seller.representative_id.function_genitive, - "seller_representer_document_parent": seller.representative_document, - "seller_inn": seller.vat, - "seller_kpp": seller.iec, - "seller_ogrn": seller.psrn, - "seller_business_address": seller.full_address, - "seller_phone": seller.phone, - "seller_whatsapp": seller.whatsapp, - "seller_telegram": seller.telegram, - "seller_email": seller.email, - - "partner_name": partner.name_write, - "partner_inn": partner.vat, - "partner_business_address": partner.full_address, - "partner_phone": partner.phone, - "partner_whatsapp": partner.whatsapp, - "partner_telegram": partner.telegram, - "partner_email": partner.email, -} - -seller_bank = seller.bank_ids and seller.bank_ids[0] -if seller_bank: - - bank = seller_bank.bank_id - bank_name = bank and bank.name or "" - bank_city = "г. {city}".format(city=bank.city) if bank and bank.city else "" - seller_bank_name = "{} {}".format(bank_name, bank_city).strip() - - ctx.update({ - "seller_bank": seller_bank_name, - "seller_rs": seller_bank.acc_number, - "seller_ks": bank.corr_account, - "seller_bic": bank.bic, - }) - -partner_bank = partner.bank_ids and partner.bank_ids[0] -if partner_bank: - - bank = partner_bank.bank_id - bank_name = bank and bank.name or "" - bank_city = "г. {city}".format(city=bank.city) if bank and bank.city else "" - partner_bank_name = "{} {}".format(bank_name, bank_city).strip() - - ctx.update({ - "partner_bank": partner_bank_name, - "partner_rs": partner_bank.acc_number, - "partner_ks": bank.corr_account, - "partner_bic": bank.bic, - }) - -# Person -if not partner.is_company: - ctx.update({ - "partner_representer_name": partner.name_write, - "partner_representer_name_initials": partner.name_initials, - "partner_representer_passport_number": partner.passport_number, - "partner_representer_passport_date": partner.passport_date, - "partner_representer_passport_department": partner.passport_department, - "partner_representer_passport_department_code": partner.passport_department_code, - }) - if not partner.name_write: - ctx.update({ - "partner_name": partner.name, - "partner_representer_name": partner.name, - }) -else: - # Company - ctx.update({ - "partner_company_form": _(dict(partner._fields['company_form'].selection).get(partner.company_form)), - "partner_representer_name": partner.representative_id.name, - "partner_representer_name_parent": partner.representative_id.name_genitive, - "partner_representer_name_initials": partner.representative_id.name_initials, - "partner_representer_function": partner.representative_id.function, - "partner_representer_function_parent": partner.representative_id.function_genitive, - "partner_representer_document_parent": partner.representative_document, - }) - - if partner.company_form == 'sp': - # Sole Proprietor - ctx.update({ - "partner_ip_number": partner.sp_register_number, - "partner_ip_date": partner.sp_register_date, - "partner_ogrnip": partner.psrn_sp, - "partner_representer_passport_number": partner.representative_id.passport_number, - "partner_representer_passport_date": partner.representative_id.passport_date, - "partner_representer_passport_department": partner.representative_id.passport_department, - "partner_representer_passport_department_code": partner.representative_id.passport_department_code, - }) - if partner.company_form == 'plc': - # Private Limited Company - ctx.update({ - "partner_kpp": partner.iec, - "partner_ogrn": partner.psrn, - }) - - -action = ctx - - - - - - - Generate Context for Annex - - - code - - -# Aliases -self = record # res.partner.contract.annex - -seller = self.company_id.partner_id -partner = self.partner_id - -# Functions -_ = self.contract_id._ -get_date = self.contract_id.get_date - -# Parse date -months = ["", - "января", "февраля", "марта", "апреля", - "мая", "июня", "июля", "августа", - "сентября", "октября", "ноября", "декабря", -] -date = get_date() -dd = date.day -mm = date.month -yyyy = date.year -yy = yyyy % 100 -MM = months[mm] - -dd = dd if dd // 10 else '0{}'.format(dd) -mm = mm if mm // 10 else '0{}'.format(mm) - -order_date = self.order_id.date_order - -# ctx keys must be decalared in this xml with id equal to "contract_field_{technical_name}" -ctx = { - "contract_number": self.contract_id.name, - - "annex_name": self.name, - "annex_number": self.counter, - - "order_name": self.order_id.name, - "order_date": "{} {} {}".format(order_date.day, months[order_date.month], order_date.year), - - "design_cost": self.to_fixed(self.design_cost), - "design_period": self.design_period, - "design_doc_cost": self.to_fixed(self.design_doc_cost), - "design_doc_period": self.design_doc_period, - "delivery_address": self.delivery_address, - "delivery_period": self.delivery_period, - "installation_address": self.installation_address, - "installation_cost": self.to_fixed(self.installation_cost), - "installation_period": self.installation_period, - "total_cost": self.to_fixed(self.total_cost), - - "payment_part_one": self.payment_part_one, - "payment_part_two": self.payment_part_two, - "payment_part_three": self.payment_part_three, - "delivery_period": self.delivery_period, - - "dd": dd, - "mm": mm, - "MM": MM, - "yy": yy, - "yyyy": yyyy, - - "seller_name": seller.name_write, - "seller_company_form": _(dict(seller._fields['company_form'].selection).get(seller.company_form)), - "seller_representer_name": seller.representative_id.name, - "seller_representer_name_parent": seller.representative_id.name_genitive, - "seller_representer_name_initials": seller.representative_id.name_initials, - "seller_representer_function": seller.representative_id.function, - "seller_representer_function_parent": seller.representative_id.function_genitive, - - "seller_inn": seller.vat, - "seller_kpp": seller.iec, - "seller_ogrn": seller.psrn, - "seller_business_address": seller.full_address, - "seller_phone": seller.phone, - "seller_email": seller.email, - - "partner_name": partner.name_write, - "partner_representer_name": partner.representative_id.name, - "partner_representer_name_initials": partner.representative_id.name_initials, - "partner_inn": partner.vat, - "partner_business_address": partner.full_address, - "partner_phone": partner.phone, - "partner_email": partner.email, -} - -seller_bank = seller.bank_ids and seller.bank_ids[0] -if seller_bank: - - bank = seller_bank.bank_id - bank_name = bank and bank.name or "" - bank_city = "г. {city}".format(city=bank.city) if bank and bank.city else "" - seller_bank_name = "{} {}".format(bank_name, bank_city).strip() - - ctx.update({ - "seller_bank": seller_bank_name, - "seller_rs": seller_bank.acc_number, - "seller_ks": bank.corr_account, - "seller_bic": bank.bic, - }) - -partner_bank = partner.bank_ids and partner.bank_ids[0] -if partner_bank: - - bank = partner_bank.bank_id - bank_name = bank and bank.name or "" - bank_city = "г. {city}".format(city=bank.city) if bank and bank.city else "" - partner_bank_name = "{} {}".format(bank_name, bank_city).strip() - - ctx.update({ - "partner_bank": partner_bank_name, - "partner_rs": partner_bank.acc_number, - "partner_ks": bank.corr_account, - "partner_bic": bank.bic, - }) - - -# Person -if not partner.is_company: - ctx.update({ - "partner_representer_name": partner.name_write, - "partner_representer_name_initials": partner.name_initials, - "partner_representer_passport_number": partner.passport_number, - "partner_representer_passport_date": partner.passport_date, - "partner_representer_passport_department": partner.passport_department, - }) - if not partner.name_write: - ctx.update({ - "partner_name": partner.name, - "partner_representer_name": partner.name, - }) -else: - # Company - ctx.update({ - "partner_company_form": _(dict(partner._fields['company_form'].selection).get(partner.company_form)), - "partner_representer_name_parent": partner.representative_id.name_genitive, - "partner_representer_document_parent": partner.representative_document, - "partner_representer_function": partner.representative_id.function, - "partner_representer_function_parent": partner.representative_id.function_genitive, - }) - - if partner.company_form == 'sp': - # Sole Proprietor - ctx.update({ - "partner_ip_number": partner.sp_register_number, - "partner_ip_date": partner.sp_register_date, - "partner_ogrnip": partner.psrn_sp, - "partner_representer_passport_number": partner.representative_id.passport_number, - "partner_representer_passport_date": partner.representative_id.passport_date, - "partner_representer_passport_department": partner.representative_id.passport_department, - }) - if partner.company_form == 'plc': - # Private Limited Company - ctx.update({ - "partner_kpp": partner.iec, - "partner_ogrn": partner.psrn, - }) - -action = ctx - - - - - - Generate Context for Sale order - - - code - - -# Aliases -self = record # sale.order - -seller = self.company_id.partner_id -partner = self.partner_id - -# Functions -_ = self._t -to_fixed = self.env["client_contracts.utils"].to_fixed - -# Parse date -months = ["", - "января", "февраля", "марта", "апреля", - "мая", "июня", "июля", "августа", - "сентября", "октября", "ноября", "декабря", -] -offer_date = self.date_order -dd = offer_date.day -mm = offer_date.month -yyyy = offer_date.year -yy = yyyy % 100 -MM = months[mm] - -dd = dd if dd // 10 else '0{}'.format(dd) -mm = mm if mm // 10 else '0{}'.format(mm) - -# ctx keys must be declared in this xml with id equal to "contract_field_{technical_name}" -ctx = { - # For manual filling on offer creation - "offer_subject": "", - "object_name": "", - "object_address": "", - - # Fields from models - "offer_name": self.name, - "offer_date": "{} {} {}".format(offer_date.day, months[offer_date.month], offer_date.year), - - "commitment_date": self.commitment_date, - "amount_untaxed": to_fixed(self.amount_untaxed), - "amount_tax": to_fixed(self.amount_tax), - "amount_total": to_fixed(self.amount_total), - "currency_symbol": self.currency_id.symbol, - "terms_and_conditions": self.note, - - "dd": dd, - "mm": mm, - "MM": MM, - "yy": yy, - "yyyy": yyyy, - - "seller_name": seller.name_write, - "seller_company_form": _(dict(seller._fields['company_form'].selection).get(seller.company_form)), - - "seller_inn": seller.vat, - "seller_kpp": seller.iec, - "seller_ogrn": seller.psrn, - "seller_business_address": seller.full_address, - "seller_phone": seller.phone, - "seller_email": seller.email, -} - -seller_bank = seller.bank_ids and seller.bank_ids[0] -if seller_bank: - - bank = seller_bank.bank_id - bank_name = bank and bank.name or "" - bank_city = "г. {city}".format(city=bank.city) if bank and bank.city else "" - seller_bank_name = "{} {}".format(bank_name, bank_city).strip() - - ctx.update({ - "seller_bank": seller_bank_name, - "seller_rs": seller_bank.acc_number, - "seller_ks": bank.corr_account, - "seller_bic": bank.bic, - }) - -action = ctx - - - - - - - Number in Words - number2words - Function - -1 - - - - Currency Number in Words - currency2words - Function - -1 - - - - - - Offer subject - offer_subject - - What we offers to our customer, i.e. 'power panels supply' or 'jobs execution and equipment supply' - - 1 - - - - Object name - object_name - - Object name this offer is made for - - 1 - - - - Object address - object_address - - Object's address this offer is made for - - 1 - - - - - Offer name - offer_name - Sale order number - 1 - - - - Offer date - offer_date - - Sale order creation date or confirmation date, if confirmed. - - 2 - - - - Commitment date - commitment_date - - Date when executor's commitment should be fulfilled - - 3 - - - - Products amount - products_amount - - Total products amount in Sale order, including services and goods. - - 3 - - - - Amount untaxed - amount_untaxed - - Sale order total amount without taxes - - 4 - - - - Amount tax - amount_tax - - Sale order total taxes amount - - 4 - - - - Amount total - amount_total - - Sale order total amount including taxes - - 4 - - - - Currency symbol - currency_symbol - - Symbol for used currency, for displaying in documents - - 4 - - - - Terms and conditions - terms_and_conditions - - Terms and conditions from Sale order - - 4 - - - - - - Contract Number - contract_number - - 1 - - - - Annex Name - annex_name - - 2 - - - - Annex Number - annex_number - - 2 - False - - - - Order Name - order_name - - 3 - - - - Order Date - order_date - - 4 - - - - Design Cost - design_cost - - False - - - - Design Period - design_period - - False - - - - Design Documentation Period - design_doc_period - - False - - - - Design Documentation Cost - design_doc_cost - - False - - - - Delivery Address - delivery_address - - False - - - - Delivery Period - delivery_period - - False - - - - Installation Address - installation_address - - False - - - - Installation Cost - installation_cost - - False - - - - Installation Period - installation_period - - False - - - - Total Cost - total_cost - - False - - - - Day - dd - Number - 11 - - - - Month - mm - Number - 16 - False - - - - Month - MM - Word - 24 - - - - Year - yy - Short - 40 - False - - - - Year - yyyy - Full - 32 - - - - Amount Whole Part - amount_whole - - - - - Amount Fractional Part - amount_fractional - - - - - Payment Part 1 - payment_part_one - - 35 - - - - Payment Part 2 - payment_part_two - - 36 - - - - Payment Part 3 - payment_part_three - - 37 - - - - - - - Name - seller_name - Seller - 48 - - - - Institutional-Legal Form - seller_company_form - Seller - 56 - - - - IP Number - seller_ip_number - Seller IP Certificate - 64 - - - - IP Issued on - seller_ip_date - Seller IP Certificate - 72 - - - - Name - seller_representer_name - Seller Representative - 80 - - - - Name Genitive - seller_representer_name_parent - Seller Representative - 88 - - - - Name Initials - seller_representer_name_initials - Seller Representative - 96 - - - - Function - seller_representer_function - Seller Representative - 104 - - - - Function Genitive - seller_representer_function_parent - Seller Representative - 112 - - - - Document Genitive - seller_representer_document_parent - Seller Representative - 120 - - - - Passport № - seller_representer_passport_number - Seller Representative - 128 - - - - Passport Issued on - seller_representer_passport_date - Seller Representative - 136 - - - - Passport Issued by - seller_representer_passport_department - Seller Representative - 144 - - - - Passport Department Code - seller_representer_passport_department_code - Seller Representative - 146 - - - - INN - seller_inn - Seller - 152 - - - - PSRN - seller_ogrn - Seller - 160 - - - - PSRN-IP - seller_ogrnip - Seller - 168 - - - - KPP - seller_kpp - Seller - 176 - - - - OKPO - seller_okpo - Seller - 184 - - - - Bank Name - seller_bank - Seller - 192 - - - - Bank Payment Account - seller_rs - Seller - 200 - - - - Bank Corresponding Account - seller_ks - Seller - 208 - - - - BIC - seller_bic - Seller - 216 - - - - Business Address - seller_business_address - Seller - 224 - - - - Phone - seller_phone - Seller - 232 - - - - WhatsApp - seller_whatsapp - Seller - 233 - - - - Telegram - seller_telegram - Seller - 234 - - - - Email - seller_email - Seller - 240 - - - - - - - Name - partner_name - Partner - 248 - - - - Institutional-Legal Form - partner_company_form - Partner - 256 - - - - IP Number - partner_ip_number - Partner IP Certificate - 264 - - - - IP Issued on - partner_ip_date - Partner IP Certificate - 272 - - - - Name - partner_representer_name - Partner Representative - 280 - - - - Name Genitive - partner_representer_name_parent - Partner Representative - 288 - - - - Name Initials - partner_representer_name_initials - Partner Representative - 296 - - - - Function - partner_representer_function - Partner Representative - 304 - - - - Function Genitive - partner_representer_function_parent - Partner Representative - 312 - - - - Document Genitive - partner_representer_document_parent - Partner Representative - 320 - - - - Passport № - partner_representer_passport_number - Partner Representative - 328 - - - - Passport Issued on - partner_representer_passport_date - Partner Representative - 336 - - - - Passport Issued by - partner_representer_passport_department - Partner Representative - 344 - - - - Passport Department Code - partner_representer_passport_department_code - Partner Representative - 346 - - - - INN - partner_inn - Partner - 352 - - - - PSRN - partner_ogrn - Partner - 360 - - - - PSRN-IP - partner_ogrnip - Partner - 368 - - - - KPP - partner_kpp - Partner - 376 - - - - OKPO - partner_okpo - Partner - 384 - - - - Bank - partner_bank - Partner - 392 - - - - Bank Payment Account - partner_rs - Partner - 400 - - - - Bank Corresponding Account - partner_ks - Partner - 408 - - - - BIC - partner_bic - Partner - 416 - - - - Business Address - partner_business_address - Partner - 424 - - - - Phone - partner_phone - Partner - 432 - - - - WhatsApp - partner_whatsapp - Partner - 433 - - - - Telegram - partner_telegram - Partner - 434 - - - - Email - partner_email - Partner - 440 - - - - diff --git a/data/payment_terms.xml b/data/payment_terms.xml deleted file mode 100755 index 90c1822..0000000 --- a/data/payment_terms.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - 100% Prepaid - Payment terms: 100% Prepaid - 1 - - - 100% Postpaid - Payment terms: 100% Postpaid - 2 - - - 2 stages - Payment terms: Partial 2 Stages - 3 - - - 3 stages - Payment terms: Partial 3 Stages - 4 - - - - diff --git a/i18n/client_contracts.pot b/i18n/client_contracts.pot deleted file mode 100644 index c6f3797..0000000 --- a/i18n/client_contracts.pot +++ /dev/null @@ -1,1561 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * client_contracts -# -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 14.0+e-20210305\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-12 11:35+0000\n" -"PO-Revision-Date: 2021-05-12 11:35+0000\n" -"Last-Translator: \n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: \n" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_commitment_date -msgid "" -"\n" -" Date when executor's commitment should be fulfilled\n" -" " -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_offer_date -msgid "" -"\n" -" Sale order creation date or confirmation date, if confirmed.\n" -" " -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_amount_total -msgid "" -"\n" -" Sale order total amount\n" -" " -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__contract_count -#: model:ir.model.fields,field_description:client_contracts.field_res_users__contract_count -msgid "# of contracts" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_postpayment -msgid "100% Postpaid" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_prepaid -msgid "100% Prepaid" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_partial_2 -msgid "2 stages" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_partial_3 -msgid "3 stages" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_product_product__description_sale -msgid "" -"A product's description you want to tell to your customers.\n" -"This description will be copied to every Sales Order, Delivery Order and Customer Invoice/Credit Note" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Act of Acceptance and Delivery" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Act of Acceptance and Transfer" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_needaction -msgid "Action Needed" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_ids -msgid "Activities" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_exception_decoration -msgid "Activity Exception Decoration" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_state -msgid "Activity State" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_type_icon -msgid "Activity Type Icon" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__street_actual -#: model:ir.model.fields,field_description:client_contracts.field_res_users__street_actual -msgid "Actual Address" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__date_conclusion_fix -msgid "Actual signing date" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Addition" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_amount_fractional -msgid "Amount Fractional Part" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_amount_whole -msgid "Amount Whole Part" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_amount_total -msgid "Amount total" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__template_type__annex -#, python-format -msgid "Annex" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_annex_name -msgid "Annex Name" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_annex_number -msgid "Annex Number" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__contract_annex_ids -msgid "Annex for this Sale order" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Annexed Specifications" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__contract_annex_ids -msgid "Annexes" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__contract_annex_ids -msgid "Annexes to this contract" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Approval List" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_attachment_count -msgid "Attachment Count" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_bic -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_bic -msgid "BIC" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_bank -msgid "Bank" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ks -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ks -msgid "Bank Corresponding Account" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_bank -msgid "Bank Name" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_rs -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_rs -msgid "Bank Payment Account" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Bill" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_business_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_business_address -msgid "Business Address" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__signature -msgid "Client signature" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Close" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract__state__close -msgid "Closed" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_commitment_date -msgid "Commitment date" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__company_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__company_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__company_id -msgid "Company" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__company_type -msgid "Company Type" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner -msgid "Contact" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#: model:ir.model,name:client_contracts.model_res_partner_contract -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__contract_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient___contract_wizard_id -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract_wizard__target__res_partner_contract -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__template_type__contract -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -#, python-format -msgid "Contract" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_annex -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__contract_annex_id -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract_wizard__target__res_partner_contract_annex -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Contract Annex" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__contract_annex_number -msgid "Contract Annex Number" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_annex__counter -msgid "Contract Annexes counter" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_field -msgid "Contract Field" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_field_transient -msgid "Contract Field Transient" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_field_action -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__transient_field_ids -msgid "Contract Fields" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_contract_number -msgid "Contract Number" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__name -msgid "Contract number" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Contract parameters" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_action -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_partner_action -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__client_contract_ids -#: model:ir.model.fields,field_description:client_contracts.field_res_users__client_contract_ids -#: model:ir.ui.menu,name:client_contracts.res_partner_contract_menu_act -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_tree -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_view_buttons -msgid "Contracts" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__contract_annex_number -msgid "Counter for generate Annex name" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__create_date_ts -msgid "Create Date Ts" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Create a document" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.view_order_form -msgid "Create offer document" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__create_uid -msgid "Created by" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__create_date -msgid "Created on" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__currency_id -msgid "Currency" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_currency2words -msgid "Currency Number in Words" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_dd -msgid "Day" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Delivery" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__delivery_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_delivery_address -msgid "Delivery Address" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_delivery_period -msgid "Delivery Period" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__delivery_period -msgid "Delivery Period (days)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__delivery_time -msgid "Delivery Time" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__description -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__description -msgid "Description" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field__description -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field_transient__description -msgid "" -"Description for this field to be showed in fields list in print form " -"creation wizard." -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Design" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__design_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_cost -msgid "Design Cost" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_doc_cost -msgid "Design Documentation Cost" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_doc_period -msgid "Design Documentation Period" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__design_period -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_period -msgid "Design Period" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_account_move__display_name -#: model:ir.model.fields,field_description:client_contracts.field_client_contracts_utils__display_name -#: model:ir.model.fields,field_description:client_contracts.field_product_product__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__display_name -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__display_name -msgid "Display Name" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__document_type_name -msgid "Document" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_document_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_document_parent -msgid "Document Genitive" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__document_name -msgid "Document Name" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_document_template -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__document_template -msgid "Document Template" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_document_template_action -msgid "Document Templates" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__design_doc_cost -msgid "Documentation Design Cost" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__design_doc_period -msgid "Documentation Design Period (days)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__email -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_email -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_email -msgid "Email" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__email -msgid "Email of the related partner (if exist) or False" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__contract_field_id -msgid "Field" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/wizard/res_partner_contract_wizard.py:0 -#, python-format -msgid "" -"Field \"%s\" specified in template, not found in model " -"\"res.partner.contract.field\"" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__date_conclusion_fix -msgid "Field for pointing out manually when contract is signed or closed" -msgstr "" - -#. module: client_contracts -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts_fields -msgid "Fields" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_follower_ids -msgid "Followers" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_channel_ids -msgid "Followers (Channels)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_partner_ids -msgid "Followers (Partners)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__activity_type_icon -msgid "Font awesome icon e.g. fa-tasks" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_yyyy -msgid "Full" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__full_address -#: model:ir.model.fields,field_description:client_contracts.field_res_users__full_address -msgid "Full Address" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_currency2words -#: model:res.partner.contract.field,description:client_contracts.contract_field_number2words -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_function -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_function -msgid "Function" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_function_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_function_parent -msgid "Function Genitive" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.server,name:client_contracts.action_get_annex_context -msgid "Generate Context for Annex" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.server,name:client_contracts.action_get_contract_context -msgid "Generate Context for Contract" -msgstr "" - -#. module: client_contracts -#: model:ir.actions.server,name:client_contracts.action_get_so_context -msgid "Generate Context for Sale order" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_account_move__id -#: model:ir.model.fields,field_description:client_contracts.field_client_contracts_utils__id -#: model:ir.model.fields,field_description:client_contracts.field_product_product__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__id -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__id -msgid "ID" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_inn -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_inn -msgid "INN" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ip_date -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ip_date -msgid "IP Issued on" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ip_number -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ip_number -msgid "IP Number" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_exception_icon -msgid "Icon" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__activity_exception_icon -msgid "Icon to indicate an exception activity." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__res_id -msgid "Id of the followed resource" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner__telegram -#: model:ir.model.fields,help:client_contracts.field_res_users__telegram -msgid "If a contact have a Telegram number or identifier" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner__whatsapp -#: model:ir.model.fields,help:client_contracts.field_res_users__whatsapp -msgid "If a contact have a WhatsApp number" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_needaction -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_unread -msgid "If checked, new messages require your attention." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_has_error -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_has_sms_error -msgid "If checked, some messages have a delivery error." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__is_active -msgid "" -"If the related partner is active (if exist) or if related channel exist" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__company_type__person -msgid "Individual" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Info" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Installation" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__installation_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_address -msgid "Installation Address" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__installation_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_cost -msgid "Installation Cost" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_period -msgid "Installation Period" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__installation_period -msgid "Installation Period (days)" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_company_form -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_company_form -msgid "Institutional-Legal Form" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__is_active -msgid "Is Active" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_is_follower -msgid "Is Follower" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__function_genitive -#: model:ir.model.fields,field_description:client_contracts.field_res_users__function_genitive -msgid "Job position genitive" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_account_move -msgid "Journal Entry" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_kpp -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_kpp -msgid "KPP" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_account_move____last_update -#: model:ir.model.fields,field_description:client_contracts.field_client_contracts_utils____last_update -#: model:ir.model.fields,field_description:client_contracts.field_product_product____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard____last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template____last_update -#: model:ir.model.fields,field_description:client_contracts.field_sale_order____last_update -msgid "Last Modified on" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__write_uid -msgid "Last Updated by" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__write_date -msgid "Last Updated on" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Leave empty for compute" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__channel_id -msgid "Listener" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_main_attachment_id -msgid "Main Attachment" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_has_error -msgid "Message Delivery error" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__subtype_ids -msgid "" -"Message subtypes followed, meaning subtypes that will be pushed onto the " -"user's Wall." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_ids -msgid "Messages" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_MM -#: model:res.partner.contract.field,name:client_contracts.contract_field_mm -msgid "Month" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__name -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Name" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__name_genitive -#: model:ir.model.fields,field_description:client_contracts.field_res_users__name_genitive -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name_parent -msgid "Name Genitive" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__name_initials -#: model:ir.model.fields,field_description:client_contracts.field_res_users__name_initials -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name_initials -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name_initials -msgid "Name Initials" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field__technical_name -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field_transient__technical_name -msgid "Name for using in templates" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_info_inherit_view -msgid "Name in ERP" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__name_write -#: model:ir.model.fields,field_description:client_contracts.field_res_users__name_write -msgid "Name in contracts" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__name -msgid "Name of the related partner (if exist) or the related channel" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract__state__draft -msgid "New" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_date_deadline -msgid "Next Activity Deadline" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_summary -msgid "Next Activity Summary" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_type_id -msgid "Next Activity Type" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_dd -#: model:res.partner.contract.field,description:client_contracts.contract_field_mm -msgid "Number" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_number2words -msgid "Number in Words" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_needaction_counter -msgid "Number of Actions" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_has_error_counter -msgid "Number of errors" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_needaction_counter -msgid "Number of messages which requires an action" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_has_error_counter -msgid "Number of messages with delivery error" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__message_unread_counter -msgid "Number of unread messages" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_okpo -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_okpo -msgid "OKPO" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#: code:addons/client_contracts/models/sale_order.py:0 -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract_wizard__target__sale_order -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type__offer -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__offer -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__template_type__offer -#, python-format -msgid "Offer" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_offer_date -msgid "Offer date" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_offer_name -msgid "Offer name" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_order_date -msgid "Order Date" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_order_name -msgid "Order Name" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ogrn -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ogrn -msgid "PSRN" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ogrnip -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ogrnip -msgid "PSRN-IP" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner__representative_document -#: model:ir.model.fields,help:client_contracts.field_res_users__representative_document -msgid "Parent Case" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__partner_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__partner_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__partner_id -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_bank -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_bic -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_business_address -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_company_form -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_email -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_inn -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_kpp -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ks -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ogrn -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ogrnip -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_okpo -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_phone -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_rs -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_telegram -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_whatsapp -msgid "Partner" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ip_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ip_number -msgid "Partner IP Certificate" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_document_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_function -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_function_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name_initials -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_department -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_department_code -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_number -msgid "Partner Representative" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_department_code -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_department_code -msgid "Passport Department Code" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_department -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_department -msgid "Passport Issued by" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_date -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_date -msgid "Passport Issued on" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_number -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_number -msgid "Passport №" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Payment" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__payment_part_one -msgid "Payment 1 Part (%)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__payment_part_two -msgid "Payment 2 Part (%)" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__payment_part_three -msgid "Payment 3 Part (%)" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_one -msgid "Payment Part 1" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_two -msgid "Payment Part 2" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_three -msgid "Payment Part 3" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_sale_order__payment_term_id -msgid "Payment Terms" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_postpayment -msgid "Payment terms: 100% Postpaid" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_prepaid -msgid "Payment terms: 100% Prepaid" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_partial_2 -msgid "Payment terms: Partial 2 Stages" -msgstr "" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_partial_3 -msgid "Payment terms: Partial 3 Stages" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner__representative_id -#: model:ir.model.fields,help:client_contracts.field_res_users__representative_id -msgid "Person representing company" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_phone -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_phone -msgid "Phone" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Print" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract.py:0 -#: code:addons/client_contracts/models/sale_order.py:0 -#, python-format -msgid "Print Form of Contract" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/account_invoice.py:0 -#: code:addons/client_contracts/models/res_partner_contract_annex.py:0 -#, python-format -msgid "Print Form of Contract Annex" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__company_type__plc -msgid "Private Limited Company" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_product_product -msgid "Product" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_wizard__target -msgid "Record of contract or annex entity, from where wizard has been called" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__res_id -msgid "Related Document ID" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__res_model -msgid "Related Document Model Name" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Renew" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__representative_id -#: model:ir.model.fields,field_description:client_contracts.field_res_users__representative_id -msgid "Representative" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__representative_document -#: model:ir.model.fields,field_description:client_contracts.field_res_users__representative_document -msgid "Representative acts on the basis of" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__activity_user_id -msgid "Responsible User" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_has_sms_error -msgid "SMS Delivery error" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_product_product__description_sale -msgid "Sale Description" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__order_id -msgid "Sale order" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_annex__order_id -msgid "Sale order for this annex." -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_offer_name -msgid "Sale order number" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_sale_order -msgid "Sales Order" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.search_res_partner_contract_filter -msgid "Search Contract" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_bank -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_bic -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_business_address -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_company_form -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_email -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_inn -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_kpp -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ks -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ogrn -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ogrnip -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_okpo -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_phone -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_rs -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_telegram -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_whatsapp -msgid "Seller" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ip_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ip_number -msgid "Seller IP Certificate" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_document_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_function -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_function_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name_initials -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_department -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_department_code -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_number -msgid "Seller Representative" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__sequence -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__sequence -msgid "Sequence" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_yy -msgid "Short" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Sign" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_contract__state__sign -msgid "Signed" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__date_conclusion -msgid "Signing Date" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__date_conclusion -msgid "Signing date in system" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__company_type__sp -msgid "Sole Proprietor" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:0 -#, python-format -msgid "Specification" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__specification_name -msgid "Specification Name" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__state -msgid "Status" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__activity_state -msgid "" -"Status based on activities\n" -"Overdue: Due date is already passed\n" -"Today: Activity date is today\n" -"Planned: Future activities." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__subtype_ids -msgid "Subtype" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__target -msgid "Target" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__technical_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__technical_name -msgid "Technical Name" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_sale_order__contract_annex_ids -msgid "" -"Technical field for binding with contract annex\n" -"In form this link showed in 'contract_annex_id' field." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__telegram -#: model:ir.model.fields,field_description:client_contracts.field_res_users__telegram -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_telegram -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_telegram -msgid "Telegram" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Template" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__attachment_id -msgid "Template Attachment" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__template_type -msgid "Template Type" -msgstr "" - -#. module: client_contracts -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts_templates -msgid "Templates" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/account_invoice.py:0 -#, python-format -msgid "There is a Sale order without annex." -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/account_invoice.py:0 -#, python-format -msgid "There is a Sale order without binding contract." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner__name_write -#: model:ir.model.fields,help:client_contracts.field_res_users__name_write -msgid "This name used in contracts" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field__visible -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field_transient__visible -msgid "" -"To show this field in fields list in print form creation wizard\n" -"User can change showed field's values in wizard." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex__total_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_total_cost -msgid "Total Cost" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard__transient_field_ids_hidden -msgid "Transient Field Ids Hidden" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template__document_type -msgid "Type of document" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__activity_exception_decoration -msgid "Type of the exception activity on record." -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_unread -msgid "Unread Messages" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__message_unread_counter -msgid "Unread Messages Counter" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__value -msgid "Value" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Values" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field__visible -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__visible -msgid "Visible" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract__website_message_ids -msgid "Website Messages" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract__website_message_ids -msgid "Website communication history" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner__whatsapp -#: model:ir.model.fields,field_description:client_contracts.field_res_users__whatsapp -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_whatsapp -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_whatsapp -msgid "WhatsApp" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_MM -msgid "Word" -msgstr "" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_yy -#: model:res.partner.contract.field,name:client_contracts.contract_field_yyyy -msgid "Year" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_client_contracts_utils -msgid "client_contracts.utils" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/sale_order.py:0 -#, python-format -msgid "from" -msgstr "" - -#. module: client_contracts -#: model_terms:ir.ui.view,arch_db:client_contracts.res_partner_contract_info_inherit_view -msgid "i.e. Ural Bank for Reconstruction and Development" -msgstr "" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_wizard -msgid "res.partner.contract.wizard" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract_annex.py:0 -#, python-format -msgid "{name} from {date}" -msgstr "" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract.py:0 -#, python-format -msgid "{type} {number} from {date}" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__act_at -msgid "Акт приема-передачи" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__act_ad -msgid "Акт сдачи-приемки" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type__contract -msgid "Договор" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type__addition -msgid "Дополнение" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__approval_list -msgid "Лист согласования" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type__annex -msgid "Приложение" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__specification -msgid "Спецификация" -msgstr "" - -#. module: client_contracts -#: model:ir.model.fields.selection,name:client_contracts.selection__res_partner_document_template__document_type_name__bill -msgid "Счёт" -msgstr "" diff --git a/i18n/ru.po b/i18n/ru.po deleted file mode 100755 index 4cd25b6..0000000 --- a/i18n/ru.po +++ /dev/null @@ -1,1140 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * client_contracts -# -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 11.0-20191106\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-03-18 13:42+0000\n" -"PO-Revision-Date: 2021-05-12 16:28+0500\n" -"Last-Translator: Stepan Savelyev\n" -"Language-Team: RYDLAB\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: \n" -"Language: ru\n" -"X-Generator: Poedit 2.4.3\n" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_count -#: model:ir.model.fields,field_description:client_contracts.field_res_users_contract_count -msgid "# of contracts" -msgstr "кол-во договоров" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_postpayment -msgid "100% Postpaid" -msgstr "100% постоплата" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_prepaid -msgid "100% Prepaid" -msgstr "100% предоплата" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_partial_2 -msgid "2 stages" -msgstr "Оплата в 2 этапа" - -#. module: client_contracts -#: model:account.payment.term,name:client_contracts.payment_term_partial_3 -msgid "3 stages" -msgstr "Оплата в 3 этапа" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:31 -#: selection:res.partner.document.template,document_type_name:0 -#, python-format -msgid "Act of Acceptance and Delivery" -msgstr "Акт сдачи-приемки" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:30 -#: selection:res.partner.document.template,document_type_name:0 -#, python-format -msgid "Act of Acceptance and Transfer" -msgstr "Акт приема-передачи" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_street_actual -#: model:ir.model.fields,field_description:client_contracts.field_res_users_street_actual -msgid "Actual Address" -msgstr "Актуальный адрес" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:21 -#: selection:res.partner.document.template,document_type:0 -#, python-format -msgid "Addition" -msgstr "Дополнение" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_amount_fractional -msgid "Amount Fractional Part" -msgstr "Дробная часть суммы" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_amount_whole -msgid "Amount Whole Part" -msgstr "Целая часть суммы" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:20 -#: selection:res.partner.document.template,document_type:0 -#: selection:res.partner.document.template,template_type:0 -#, python-format -msgid "Annex" -msgstr "Приложение" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_annex_name -msgid "Annex Name" -msgstr "Наименование приложения" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_annex_number -msgid "Annex Number" -msgstr "Номер приложения" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Annexed Specifications" -msgstr "Приложенные спецификации" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_contract_annex_ids -msgid "Annexes" -msgstr "Приложения" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_contract_annex_ids -msgid "Annexes to this contract" -msgstr "Приложения к договору" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:29 -#: selection:res.partner.document.template,document_type_name:0 -#, python-format -msgid "Approval List" -msgstr "Лист согласования" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_bic -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_bic -msgid "BIC" -msgstr "БИК" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_bank -msgid "Bank" -msgstr "Банк" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ks -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ks -msgid "Bank Corresponding Account" -msgstr "Корр. счёт" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_bank -msgid "Bank Name" -msgstr "Наименование банка" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_rs -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_rs -msgid "Bank Payment Account" -msgstr "Расчётный счёт" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:27 -#: selection:res.partner.document.template,document_type_name:0 -#, python-format -msgid "Bill" -msgstr "Счёт" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_business_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_business_address -msgid "Business Address" -msgstr "Юридический адрес" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_signature -msgid "Client signature" -msgstr "Подпись или печать" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Close" -msgstr "Закрыть" - -#. module: client_contracts -#: selection:res.partner.contract,state:0 -msgid "Closed" -msgstr "Закрыт" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_company_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_company_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_company_id -msgid "Company" -msgstr "Компания" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_company_type -msgid "Company Type" -msgstr "Тип компании" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_date_conclusion -msgid "Conclusion Date" -msgstr "Дата подписания" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner -msgid "Contact" -msgstr "Контакт" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:19 -#: model:ir.model,name:client_contracts.model_res_partner_contract -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_contract_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient__contract_wizard_id -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -#: selection:res.partner.contract.wizard,target:0 -#: selection:res.partner.document.template,document_type:0 -#: selection:res.partner.document.template,template_type:0 -#, python-format -msgid "Contract" -msgstr "Договор" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_annex -#: model:ir.model.fields,field_description:client_contracts.field_sale_order_contract_annex_id -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -#: selection:res.partner.contract.wizard,target:0 -msgid "Contract Annex" -msgstr "Приложение к договору" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_contract_annex_number -msgid "Contract Annex Number" -msgstr "Счётчик приложений к договору" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_field -msgid "Contract Field" -msgstr "Поле договора" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_field_transient -msgid "Contract Field Transient" -msgstr "Фактическое поле договора" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_field_action -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_transient_field_ids -msgid "Contract Fields" -msgstr "Поля договора" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_contract_number -msgid "Contract Number" -msgstr "Номер договора" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_name -msgid "Contract number" -msgstr "Номер договора" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Contract parameters" -msgstr "Информация" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_action -#: model:ir.actions.act_window,name:client_contracts.res_partner_contract_partner_action -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_client_contract_ids -#: model:ir.model.fields,field_description:client_contracts.field_res_users_client_contract_ids -#: model:ir.ui.menu,name:client_contracts.res_partner_contract_menu_act -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_tree -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_view_buttons -msgid "Contracts" -msgstr "Договоры" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_contract_annex_number -msgid "Counter for generate Annex name" -msgstr "Счётчик для генерации имени приложения к договору" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_annex_counter -msgid "Counter of Contract Annexes" -msgstr "Счётчик приложений к договору" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_create_date_ts -msgid "Create Date Ts" -msgstr "Создан (таймстамп)" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Create a document" -msgstr "Создать документ" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_create_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_create_uid -msgid "Created by" -msgstr "Создано" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_create_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_create_date -msgid "Created on" -msgstr "Создан" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_currency_id -msgid "Currency" -msgstr "Валюта" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_currency2words -msgid "Currency Number in Words" -msgstr "Денежный формат числа прописью" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_date_conclusion_fix -msgid "Date of manual conclusion" -msgstr "Дата подписания" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_date_conclusion -msgid "Date of system conclusion" -msgstr "Дата подписания в системе" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_dd -msgid "Day" -msgstr "День" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Delivery" -msgstr "Доставка" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_delivery_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_delivery_address -msgid "Delivery Address" -msgstr "Адрес доставки" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_delivery_period -msgid "Delivery Period" -msgstr "Срок поставки" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_delivery_period -msgid "Delivery Period (days)" -msgstr "Срок поставки изделий" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_sale_order_delivery_time -msgid "Delivery Time" -msgstr "Срок доставки" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_description -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_description -msgid "Description" -msgstr "Описание" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Design" -msgstr "Дизайн" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_design_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_cost -msgid "Design Cost" -msgstr "Стоимость разработки дизайна" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_doc_cost -msgid "Design Documentation Cost" -msgstr "Стоимость разработки КД" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_doc_period -msgid "Design Documentation Period" -msgstr "Срок разработки КД" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_design_period -#: model:res.partner.contract.field,name:client_contracts.contract_field_design_period -msgid "Design Period" -msgstr "Срок разработки дизайна" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_display_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_display_name -msgid "Display Name" -msgstr "Отображаемое Имя" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_document_type_name -msgid "Document" -msgstr "Документ" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_document_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_document_parent -msgid "Document Genitive" -msgstr "Документ (род.падеж)" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_document_name -msgid "Document Name" -msgstr "Имя документа" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_document_template -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_document_template -msgid "Document Template" -msgstr "Шаблон документа" - -#. module: client_contracts -#: model:ir.actions.act_window,name:client_contracts.res_partner_document_template_action -msgid "Document Templates" -msgstr "Шаблоны документов" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_design_doc_cost -msgid "Documentation Design Cost" -msgstr "Стоимость разработки КД" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_design_doc_period -msgid "Documentation Design Period (days)" -msgstr "Срок подготовки КД" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_email -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_email -msgid "Email" -msgstr "Эл. почта" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_contract_field_id -msgid "Field" -msgstr "Поле" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_date_conclusion_fix -msgid "Field for manual edit when contract is signed or closed" -msgstr "Поле для ручного редактирования, когда договор подписан либо закрыт" - -#. module: client_contracts -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts_fields -msgid "Fields" -msgstr "Поля" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_yyyy -msgid "Full" -msgstr "Полный" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_full_address -#: model:ir.model.fields,field_description:client_contracts.field_res_users_full_address -msgid "Full Address" -msgstr "Полный адрес" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_currency2words -#: model:res.partner.contract.field,description:client_contracts.contract_field_number2words -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_function -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_function -msgid "Function" -msgstr "Должность" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_function_genitive -#: model:ir.model.fields,field_description:client_contracts.field_res_users_function_genitive -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_function_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_function_parent -msgid "Function Genitive" -msgstr "Должность (род.падеж)" - -#. module: client_contracts -#: model:ir.actions.server,name:client_contracts.action_get_annex_context -#: model:ir.actions.server,name:client_contracts.action_get_contract_context -msgid "Generate Context for Contract" -msgstr "Generate Context for Contract" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_id -msgid "ID" -msgstr "Номер" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_inn -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_inn -msgid "INN" -msgstr "ИНН" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ip_date -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ip_date -msgid "IP Issued on" -msgstr "ИП Выдан" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ip_number -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ip_number -msgid "IP Number" -msgstr "ИП Серия и номер" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_telegram -#: model:ir.model.fields,help:client_contracts.field_res_users_telegram -msgid "If a contact have a Telegram number or identifier" -msgstr "Номер или идентификатор в Telegram" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_whatsapp -#: model:ir.model.fields,help:client_contracts.field_res_users_whatsapp -msgid "If a contact have a WhatsApp number" -msgstr "Номер в WhatsApp" - -#. module: client_contracts -#: selection:res.partner.document.template,company_type:0 -msgid "Individual" -msgstr "Физическое лицо" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Info" -msgstr "Информация" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Installation" -msgstr "Монтаж" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_installation_address -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_address -msgid "Installation Address" -msgstr "Монтаж по адресу" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_installation_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_cost -msgid "Installation Cost" -msgstr "Стоимость монтажа" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_installation_period -msgid "Installation Period" -msgstr "Срок монтажа изделий" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_installation_period -msgid "Installation Period (days)" -msgstr "Срок монтажа изделий" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_company_form -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_company_form -msgid "Institutional-Legal Form" -msgstr "Огранизационно-правовая форма" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_account_invoice -msgid "Invoice" -msgstr "Счёт" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_kpp -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_kpp -msgid "KPP" -msgstr "КПП" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract___last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex___last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field___last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient___last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard___last_update -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template___last_update -msgid "Last Modified on" -msgstr "Последнее изменение" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_write_uid -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_write_uid -msgid "Last Updated by" -msgstr "Последний раз обновил" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_write_date -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_write_date -msgid "Last Updated on" -msgstr "Последнее обновление" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Leave empty for compute" -msgstr "Оставить пустым для автозаполнения" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_MM -#: model:res.partner.contract.field,name:client_contracts.contract_field_mm -msgid "Month" -msgstr "Месяц" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_name -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_name -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name -msgid "Name" -msgstr "Название" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_name_genitive -#: model:ir.model.fields,field_description:client_contracts.field_res_users_name_genitive -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name_parent -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name_parent -msgid "Name Genitive" -msgstr "Имя (род.падеж)" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_name_initials -#: model:ir.model.fields,field_description:client_contracts.field_res_users_name_initials -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_name_initials -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_name_initials -msgid "Name Initials" -msgstr "Фамилия с инициалами" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_info_inherit_view -msgid "Name in ERP" -msgstr "Название в ERP" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_name_write -#: model:ir.model.fields,field_description:client_contracts.field_res_users_name_write -msgid "Name in contracts" -msgstr "Название в договоре" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field_technical_name -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_field_transient_technical_name -msgid "Name uses in template" -msgstr "Имя поля, используемое в шаблоне" - -#. module: client_contracts -#: selection:res.partner.contract,state:0 -msgid "New" -msgstr "Новый" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_dd -#: model:res.partner.contract.field,description:client_contracts.contract_field_mm -msgid "Number" -msgstr "Число" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_number2words -msgid "Number in Words" -msgstr "Число прописью" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_okpo -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_okpo -msgid "OKPO" -msgstr "ОКПО" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_order_id -msgid "Order" -msgstr "Заказ" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_order_date -msgid "Order Date" -msgstr "Дата заказа" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_order_name -msgid "Order Name" -msgstr "Имя заказа" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_annex_order_id -msgid "Orders with this partner which are not uses in annexes yet" -msgstr "" -"Заказы, заключённые с этим партнёром и ещё не использующиеся в приложениях" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ogrn -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ogrn -msgid "PSRN" -msgstr "ОГРН" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_ogrnip -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_ogrnip -msgid "PSRN-IP" -msgstr "ОГРНИП" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_representative_document -#: model:ir.model.fields,help:client_contracts.field_res_users_representative_document -msgid "Parent Case" -msgstr "В родительном падеже" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_partner_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_partner_id -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_partner_id -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_bank -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_bic -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_business_address -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_company_form -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_email -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_inn -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_kpp -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ks -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ogrn -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ogrnip -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_okpo -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_phone -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_rs -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_telegram -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_whatsapp -msgid "Partner" -msgstr "Партнёр" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ip_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_ip_number -msgid "Partner IP Certificate" -msgstr "Партнёр; Сертификат о регистрации ИП" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_document_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_function -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_function_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name_initials -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_name_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_department -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_department_code -#: model:res.partner.contract.field,description:client_contracts.contract_field_partner_representer_passport_number -msgid "Partner Representative" -msgstr "Представитель Партнёра" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_department_code -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_department_code -msgid "Passport Department Code" -msgstr "Код подразделения, выдавшего паспорт" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_department -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_department -msgid "Passport Issued by" -msgstr "Паспорт выдан" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_date -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_date -msgid "Passport Issued on" -msgstr "Паспорт выдан" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_representer_passport_number -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_representer_passport_number -msgid "Passport №" -msgstr "Паспорт №" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_annex_view_form -msgid "Payment" -msgstr "Платеж" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_payment_part_one -msgid "Payment 1 Part (%)" -msgstr "Оплата первой части в размере (%)" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_payment_part_two -msgid "Payment 2 Part (%)" -msgstr "Оплата второй части в размере (%)" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_payment_part_three -msgid "Payment 3 Part (%)" -msgstr "Оплата третьей части в размере (%)" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_one -msgid "Payment Part 1" -msgstr "Оплата первой части (%)" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_two -msgid "Payment Part 2" -msgstr "Оплата второй части (%)" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_payment_part_three -msgid "Payment Part 3" -msgstr "Оплата третьей части (%)" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_postpayment -msgid "Payment terms: 100% Postpaid" -msgstr "Условия оплаты: постоплата" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_prepaid -msgid "Payment terms: 100% Prepaid" -msgstr "Условия оплаты: 100% предоплата" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_partial_2 -msgid "Payment terms: Partial 2 Stages" -msgstr "Условия оплаты: частично в 2 этапа" - -#. module: client_contracts -#: model:account.payment.term,note:client_contracts.payment_term_partial_3 -msgid "Payment terms: Partial 3 Stages" -msgstr "Условия оплаты: частично в 3 этапа" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_representative_id -#: model:ir.model.fields,help:client_contracts.field_res_users_representative_id -msgid "Person, who represents company" -msgstr "Представитель компании" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_phone -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_phone -msgid "Phone" -msgstr "Телефон" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Print" -msgstr "Печать" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract.py:98 -#, python-format -msgid "Print Form of Contract" -msgstr "Форма печати договора" - -#. module: client_contracts -#: code:addons/client_contracts/models/account_invoice.py:31 -#: code:addons/client_contracts/models/res_partner_contract_annex.py:110 -#, python-format -msgid "Print Form of Contract Annex" -msgstr "Форма печати приложения к договору" - -#. module: client_contracts -#: selection:res.partner.document.template,company_type:0 -msgid "Private Limited Company" -msgstr "Общество с ограниченной ответственностью" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_sale_order -msgid "Quotation" -msgstr "Оферта" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_res_model -msgid "Related Document Model Name" -msgstr "Related Document Model Name" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Renew" -msgstr "Возобновлено" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_representative_id -#: model:ir.model.fields,field_description:client_contracts.field_res_users_representative_id -msgid "Representative" -msgstr "Представитель" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_representative_document -#: model:ir.model.fields,field_description:client_contracts.field_res_users_representative_document -msgid "Representative acts on the basis of" -msgstr "Представитель действует на основании" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.search_res_partner_contract_filter -msgid "Search Contract" -msgstr "Поиск договора" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_bank -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_bic -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_business_address -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_company_form -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_email -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_inn -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_kpp -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ks -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ogrn -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ogrnip -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_okpo -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_phone -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_rs -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_telegram -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_whatsapp -msgid "Seller" -msgstr "Продавец" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ip_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_ip_number -msgid "Seller IP Certificate" -msgstr "Продавец; Сертификат о регистрации ИП" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_document_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_function -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_function_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name_initials -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_name_parent -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_date -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_department -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_department_code -#: model:res.partner.contract.field,description:client_contracts.contract_field_seller_representer_passport_number -msgid "Seller Representative" -msgstr "Представитель Продавца" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_sequence -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_sequence -msgid "Sequence" -msgstr "Нумерация" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_yy -msgid "Short" -msgstr "Сокращенно" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_form -msgid "Sign" -msgstr "Подписано" - -#. module: client_contracts -#: selection:res.partner.contract,state:0 -msgid "Signed" -msgstr "Подписан" - -#. module: client_contracts -#: selection:res.partner.document.template,company_type:0 -msgid "Sole Proprietor" -msgstr "Индивидуальный предприниматель" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_document_template.py:28 -#: selection:res.partner.document.template,document_type_name:0 -#, python-format -msgid "Specification" -msgstr "Спецификация" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_specification_name -msgid "Specification Name" -msgstr "Имя спецификации" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_state -msgid "Status" -msgstr "Статус" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_target -msgid "Target" -msgstr "Ссылка" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_technical_name -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_technical_name -msgid "Technical Name" -msgstr "Техническое название" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_telegram -#: model:ir.model.fields,field_description:client_contracts.field_res_users_telegram -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_telegram -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_telegram -msgid "Telegram" -msgstr "Telegram" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Template" -msgstr "Шаблон" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_attachment_id -msgid "Template Attachment" -msgstr "Вложение-шаблон" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_template_type -msgid "Template Type" -msgstr "Тип шаблона" - -#. module: client_contracts -#: model:ir.ui.menu,name:client_contracts.res_partner_menu_contracts_templates -msgid "Templates" -msgstr "Шаблоны" - -#. module: client_contracts -#: code:addons/client_contracts/models/account_invoice.py:20 -#, python-format -msgid "" -"There is no binding contract. It is necessary to link the order with the " -"annex to the contract." -msgstr "" -"Отсутствует связанный договор. Необходимо связать заказ с приложением к " -"договору." - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_name_write -#: model:ir.model.fields,help:client_contracts.field_res_users_name_write -msgid "This name uses in contracts" -msgstr "Наименование, используемое при заполнении договоров" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_annex_total_cost -#: model:res.partner.contract.field,name:client_contracts.contract_field_total_cost -msgid "Total Cost" -msgstr "Общая стоимость" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_wizard_transient_field_ids_hidden -msgid "Transient Field Ids Hidden" -msgstr "Transient Field Ids Hidden" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_document_template_document_type -msgid "Type of document" -msgstr "Вид документа" - -#. module: client_contracts -#: model:ir.model.fields,help:client_contracts.field_res_partner_contract_annex_currency_id -msgid "Utility field to express amount currency" -msgstr "Служебное поле, чтобы выразить суммы в валюте" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_value -msgid "Value" -msgstr "Значение" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_wizard_print_document_view -msgid "Values" -msgstr "Значения" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_transient_visible -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_contract_field_visible -msgid "Visible" -msgstr "Видимый" - -#. module: client_contracts -#: model:ir.model.fields,field_description:client_contracts.field_res_partner_whatsapp -#: model:ir.model.fields,field_description:client_contracts.field_res_users_whatsapp -#: model:res.partner.contract.field,name:client_contracts.contract_field_partner_whatsapp -#: model:res.partner.contract.field,name:client_contracts.contract_field_seller_whatsapp -msgid "WhatsApp" -msgstr "WhatsApp" - -#. module: client_contracts -#: model:res.partner.contract.field,description:client_contracts.contract_field_MM -msgid "Word" -msgstr "Слово" - -#. module: client_contracts -#: model:res.partner.contract.field,name:client_contracts.contract_field_yy -#: model:res.partner.contract.field,name:client_contracts.contract_field_yyyy -msgid "Year" -msgstr "Год" - -#. module: client_contracts -#: model:ir.ui.view,arch_db:client_contracts.res_partner_contract_info_inherit_view -msgid "i.e. Ural Bank for Reconstruction and Development" -msgstr "напр. «Уральский банк реконструкции и развития»" - -#. module: client_contracts -#: model:ir.model,name:client_contracts.model_res_partner_contract_wizard -msgid "res.partner.contract.wizard" -msgstr "res.partner.contract.wizard" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract_annex.py:63 -#, python-format -msgid "{name} from {date}" -msgstr "{name} от {date}" - -#. module: client_contracts -#: code:addons/client_contracts/models/res_partner_contract.py:111 -#, python-format -msgid "{type} {number} from {date}" -msgstr "{type} {number} от {date}" diff --git a/models/__init__.py b/models/__init__.py index 6227352..a248cf2 100755 --- a/models/__init__.py +++ b/models/__init__.py @@ -1,9 +1 @@ -from . import account_invoice -from . import product_product -from . import res_partner -from . import res_partner_contract -from . import res_partner_contract_annex -from . import res_partner_contract_field -from . import res_partner_contract_field_transient -from . import res_partner_document_template -from . import sale_order +from . import ir_actions_report diff --git a/models/account_invoice.py b/models/account_invoice.py deleted file mode 100755 index b23e588..0000000 --- a/models/account_invoice.py +++ /dev/null @@ -1,67 +0,0 @@ -from odoo import models, _ -from odoo.exceptions import UserError -from ..utils import MODULE_NAME - - -class AccountInvoice(models.Model): - _inherit = "account.move" - - @staticmethod - def check_contract_presence(sale_order_ids): - error_message = "" - if any(not so.contract_annex_id.contract_id for so in sale_order_ids): - error_message = _("There is a Sale order without binding contract.") - if any(not so.contract_annex_id for so in sale_order_ids): - error_message = _("There is a Sale order without annex.") - if error_message: - raise UserError(error_message) - - def action_invoice_print(self): - """ - for so in self.env["sale.order"].search([]): - if self.id in so.invoice_ids.ids: - order = so - break - else: - return super().action_invoice_print() - - if not order.contract_annex_id or not order.contract_annex_id.contract_id: - raise UserError( - _( - "There is no binding contract. It is necessary to link the order with the annex to the contract." - ) - ) - self.sent = True - """ - - sale_orders_ids = self.env["sale.order"].search( - [("invoice_ids", "in", self.ids)] - ) - if not sale_orders_ids: - return super().action_invoice_print() - - self.check_contract_presence(sale_orders_ids) - self.filtered(lambda inv: not inv.is_move_sent).write({"is_move_sent": True}) - - view = self.env.ref( - "{}.res_partner_wizard_print_document_view".format(MODULE_NAME) - ) - # annex = order.contract_annex_id - return { - "name": _("Print Form of Contract Annex"), - "type": "ir.actions.act_window", - "res_model": "res.partner.contract.wizard", - "view_mode": "form", - "view_id": view.id, - "target": "new", - "context": { - # "self_id": annex.id, - "active_ids": self.ids, - "active_model": "res.partner.contract.annex", - # "company_form": annex.partner_id.company_form - # if annex.partner_id.is_company - # else "person", - "attachment_model": self._name, - "attachment_res_id": self.id, - }, - } diff --git a/models/ir_actions_report.py b/models/ir_actions_report.py new file mode 100644 index 0000000..67a15f3 --- /dev/null +++ b/models/ir_actions_report.py @@ -0,0 +1,183 @@ +import io +from collections import OrderedDict +from jinja2 import Environment as Jinja2Environment +from logging import getLogger + +from docxcompose.composer import Composer +from docx import Document +from docxtpl import DocxTemplate + +from odoo import _, api, fields, models, SUPERUSER_ID +from odoo.exceptions import AccessError, UserError +from odoo.sql_db import TestCursor +from odoo.tools.safe_eval import safe_eval, time + +from ..utils.num2words import num2words_, num2words_currency + +_logger = getLogger(__name__) + + +class IrActionsReport(models.Model): + _inherit = "ir.actions.actions" + + report_name = fields.Char(required=False) + report_type = fields.Selection( + selection_add=[("docx-docx", "DOCX")], ondelete="cascade" + ) + report_docx_template = fields.Binary( + string="Report docx template", + ) + + def _render_docx_docx(self, res_ids=None, data=None): + if not data: + data = {} + data.setdefault("report_type", "docx") + + # access the report details with sudo() but evaluation context as current user + self_sudo = self.sudo() + + save_in_attachment = OrderedDict() + # Maps the streams in `save_in_attachment` back to the records they came from + stream_record = dict() + if res_ids: + Model = self.env[self_sudo.model] + record_ids = Model.browse(res_ids) + docx_record_ids = Model + if self_sudo.attachment: + for record_id in record_ids: + attachment = self_sudo.retrieve_attachment(record_id) + if attachment: + stream = self_sudo._retrieve_stream_from_attachment(attachment) + save_in_attachment[record_id.id] = stream + stream_record[stream] = record_id + if not self_sudo.attachment_use or not attachment: + docx_record_ids += record_id + else: + docx_record_ids = record_ids + res_ids = docx_record_ids.ids + + if save_in_attachment and not res_ids: + _logger.info("The DOCS report has been generated from attachments.") + return self_sudo._post_docx(save_in_attachment), "docx" + + template = self.report_docx_template + template_path = template._full_path(template.store_fname) + + doc = DocxTemplate(template_path) + + jinja_env = Jinja2Environment() + + functions = { + "number2words": num2words_, + "currency2words": num2words_currency, + } + jinja_env.globals.update(**functions) + + doc.render(data, jinja_env) + + docx_content = io.BytesIO() + doc.save(docx_content) + docx_content.seek(0) + + if res_ids: + _logger.info( + "The DOCS report has been generated for model: %s, records %s." + % (self_sudo.model, str(res_ids)) + ) + return ( + self_sudo._post_docx( + save_in_attachment, docx_content=docx_content, res_ids=res_ids + ), + "docx", + ) + return docx_content, "docx" + + def _post_docx(self, save_in_attachment, docx_content=None, res_ids=None): + def close_streams(streams): + for stream in streams: + try: + stream.close() + except Exception: + pass + + if len(save_in_attachment) == 1 and not docx_content: + return list(save_in_attachment.values())[0].getvalue() + + streams = [] + + if docx_content: + # Build a record_map mapping id -> record + record_map = { + r.id: r + for r in self.env[self.model].browse( + [res_id for res_id in res_ids if res_id] + ) + } + + # If no value in attachment or no record specified, only append the whole docx. + if not record_map or not self.attachment: + streams.append(docx_content) + else: + if len(res_ids) == 1: + # Only one record, so postprocess directly and append the whole docx. + if ( + res_ids[0] in record_map + and not res_ids[0] in save_in_attachment + ): + new_stream = self._postprocess_docx_report( + record_map[res_ids[0]], docx_content + ) + # If the buffer has been modified, mark the old buffer to be closed as well. + if new_stream and new_stream != docx_content: + close_streams([docx_content]) + docx_content = new_stream + streams.append(docx_content) + else: + streams.append(docx_content) + + if self.attachment_use: + for stream in save_in_attachment.values(): + streams.append(stream) + + if len(streams) == 1: + result = streams[0].getvalue() + else: + try: + result = self._merge_docx(streams) + except Exception: + raise UserError(_("One of the documents, you try to merge is fallback")) + + close_streams(streams) + return result + + def _postprocess_docx_report(self, record, buffer): + attachment_name = safe_eval(self.attachment, {"object": record, "time": time}) + if not attachment_name: + return None + attachment_vals = { + "name": attachment_name, + "raw": buffer.getvalue(), + "res_model": self.model, + "res_id": record.id, + "type": "binary", + } + try: + self.env["ir.attachment"].create(attachment_vals) + except AccessError: + _logger.info( + "Cannot save DOCX report %r as attachment", attachment_vals["name"] + ) + else: + _logger.info( + "The DOCX document %s is now saved in the database", + attachment_vals["name"], + ) + return buffer + + def _merge_docx(self, streams): + writer = Document() + composer = Composer(writer) + for stream in streams: + reader = Document(stream) + composer.append(reader) + return composer.getvalue() diff --git a/models/product_product.py b/models/product_product.py deleted file mode 100644 index 71a55ef..0000000 --- a/models/product_product.py +++ /dev/null @@ -1,12 +0,0 @@ -from odoo import fields, models - - -class ProductProduct(models.Model): - _inherit = "product.product" - - description_sale = fields.Text( - "Sale Description", - translate=True, - help="A product's description you want to tell to your customers.\n" - "This description will be copied to every Sales Order, Delivery Order and Customer Invoice/Credit Note", - ) diff --git a/models/res_partner.py b/models/res_partner.py deleted file mode 100755 index 8f6025f..0000000 --- a/models/res_partner.py +++ /dev/null @@ -1,73 +0,0 @@ -from odoo import api, fields, models - - -class ResPartner(models.Model): - _inherit = "res.partner" - - name_write = fields.Char( - string="Name in contracts", - help="This name used in contracts", - ) - name_genitive = fields.Char( - string="Name Genitive", - ) - name_initials = fields.Char( - string="Name Initials", - ) - function_genitive = fields.Char( - string="Job position genitive", - ) - client_contract_ids = fields.One2many( - "res.partner.contract", - "partner_id", - string="Contracts", - ) - contract_count = fields.Integer( - compute="_compute_contract_count", string="# of contracts" - ) - full_address = fields.Char( - compute="_compute_full_address" - ) # Check for res.partner.contact_address in base/res - street_actual = fields.Many2one( - "res.partner", - string="Actual Address", - ) - representative_id = fields.Many2one( - "res.partner", string="Representative", help="Person representing company" - ) - representative_document = fields.Char( - string="Representative acts on the basis of", - help="Parent Case", - ) - signature = fields.Binary(string="Client signature") - whatsapp = fields.Char( - string="WhatsApp", - help="If a contact have a WhatsApp number", - ) - telegram = fields.Char( - string="Telegram", - help="If a contact have a Telegram number or identifier", - ) - - @api.depends("street", "street2", "city", "state_id", "zip", "country_id") - def _compute_full_address(self): - for record in self: - address_data = filter( - None, - map( - lambda s: s and s.strip(), - [ - record.zip, - record.street, - record.street2, - record.city, - record.country_id.l10n_ru_short_name or record.country_id.name, - ], - ), - ) - record.full_address = ", ".join(address_data) - - @api.depends("self.client_contract_ids") - def _compute_contract_count(self): - self.ensure_one() - self.contract_count = len(self.client_contract_ids) diff --git a/models/res_partner_contract.py b/models/res_partner_contract.py deleted file mode 100755 index 6320247..0000000 --- a/models/res_partner_contract.py +++ /dev/null @@ -1,157 +0,0 @@ -import datetime - -from odoo import _, fields, models - -from ..utils import MODULE_NAME - -# from ..utils.misc import Extension, IDocument - - -class PartnerContract(models.Model): # , IDocument, Extension): - _name = "res.partner.contract" - _description = "Contract" - _inherit = [ - "mail.thread", - "mail.activity.mixin", - "mail.followers", - "client_contracts.utils", - ] - - def _get_default_name(self): - """Returns name format `№YYMM-D-N`, - where N is a sequence number of contracts which are created this day - """ - current_day_ts = ( - datetime.datetime.now() - .replace(minute=0, hour=0, second=0, microsecond=0) - .timestamp() - ) - - contracts_today = self.search([("create_date_ts", ">=", current_day_ts)]) - - contract_date = "{format_date}-{number}".format( - format_date=datetime.date.strftime(datetime.date.today(), "%y%m-%d"), - number=len(contracts_today) + 1, - ) - - return contract_date - - @staticmethod - def _get_default_create_date_ts(): - """Returns timestamp of now by local datetime""" - return datetime.datetime.now().timestamp() - - partner_id = fields.Many2one( - "res.partner", - string="Partner", - default=lambda self: self.env.context.get("active_id"), - required=True, - ) - company_id = fields.Many2one( - "res.company", - string="Company", - default=lambda self: self.env.company, - ) - create_date_ts = fields.Char(default=_get_default_create_date_ts) - res_model = fields.Char(default=lambda self: self._name) - name = fields.Char( - string="Contract number", - default=_get_default_name, - ) - create_date = fields.Datetime(string="Created on") - date_conclusion = fields.Date( - string="Signing date in system", - ) - date_conclusion_fix = fields.Date( - string="Actual signing date", - help="Field for pointing out manually when contract is signed or closed", - default=lambda self: self.date_conclusion, - ) - contract_annex_ids = fields.One2many( - comodel_name="res.partner.contract.annex", - inverse_name="contract_id", - string="Annexes", - help="Annexes to this contract", - ) - contract_annex_number = fields.Integer( - default=1, help="Counter for generate Annex name" - ) - state = fields.Selection( - [ - ("draft", "New"), - ("sign", "Signed"), - ("close", "Closed"), - ], - string="Status", - readonly=True, - copy=False, - index=True, - tracking=True, - track_sequence=3, - default="draft", - ) - - def action_sign(self): - self.write({"state": "sign", "date_conclusion": fields.Date.today()}) - - def action_close(self): - self.write({"state": "close"}) - - def action_renew(self): - self.write({"state": "draft"}) - - def action_print_form(self): - self.ensure_one() - view = self.env.ref( - "{}.res_partner_wizard_print_document_view".format(MODULE_NAME) - ) - return { - "name": _("Print Form of Contract"), - "type": "ir.actions.act_window", - "res_model": "res.partner.contract.wizard", - "view_mode": "form", - "view_id": view.id, - "target": "new", - "context": { - "self_id": self.id, - "active_model": self._name, - "company_form": self.partner_id.company_form - if self.partner_id.is_company - else "person", - }, - } - - def get_name_by_document_template(self, document_template_id): - self.ensure_one() - return self.name - - def get_filename_by_document_template(self, document_template_id): - self.ensure_one() - return _("{type} {number} from {date}").format( - type=_( - dict(document_template_id._fields["document_type"].selection).get( - document_template_id.document_type - ) - ), - number=self.name, - date=self.get_date().strftime("%d.%m.%Y"), - ) - - def get_date(self): - """Uses in xml action (data/fields_default) - - Returns: - datetime.datetime -- date_conclusion_fix or date_conclusion or create_date - """ - self.ensure_one() - date = self.date_conclusion_fix or self.date_conclusion - return date or self.create_date - - @staticmethod - def _(arg): - """Uses in xml action (data/fields_default) - - Arguments: - arg {str} -- String to translate - """ - return _(arg) diff --git a/models/res_partner_contract_annex.py b/models/res_partner_contract_annex.py deleted file mode 100755 index 84c4a45..0000000 --- a/models/res_partner_contract_annex.py +++ /dev/null @@ -1,236 +0,0 @@ -import math -import logging - -from odoo import _, api, fields, models - -from ..utils import MODULE_NAME - -# from ..utils.misc import Extension, IDocument -_logger = logging.getLogger(__name__) - - -class ContractOrderAnnex(models.Model): # , IDocument, Extension): - _name = "res.partner.contract.annex" - _inherit = ["client_contracts.utils"] - _description = "Contract Annex" - - name = fields.Char( - string="Name", - ) - display_name = fields.Char( - compute="_compute_display_name", - ) - specification_name = fields.Char( - compute="_compute_specification_name", - ) - - contract_id = fields.Many2one( - "res.partner.contract", - string="Contract", - readonly=True, - ) - company_id = fields.Many2one( - comodel_name="res.company", - related="contract_id.company_id", - ) - partner_id = fields.Many2one( - comodel_name="res.partner", - related="contract_id.partner_id", - ) - order_id = fields.Many2one( - comodel_name="sale.order", - string="Sale order", - help="Sale order for this annex.", - required=True, - ) - date_conclusion = fields.Date( - string="Signing Date", - default=fields.Date.today(), - ) - counter = fields.Integer( - string="№", - help="Contract Annexes counter", - ) - currency_id = fields.Many2one( - comodel_name="res.currency", - string="Currency", - default=lambda self: self.env.company.currency_id.id, - ) - - design_period = fields.Integer( - string="Design Period", - ) - design_cost = fields.Monetary( - string="Design Cost", - currency_field="currency_id", - ) - - design_doc_period = fields.Integer( - string="Documentation Design Period (days)", - ) - design_doc_cost = fields.Monetary( - string="Documentation Design Cost", - currency_field="currency_id", - ) - - delivery_address = fields.Char( - string="Delivery Address", - ) - delivery_period = fields.Integer(string="Delivery Period (days)") - - installation_address = fields.Char( - string="Installation Address", - ) - installation_period = fields.Integer( - string="Installation Period (days)", - ) - installation_cost = fields.Integer( - string="Installation Cost", - ) - - total_cost = fields.Monetary( - string="Total Cost", - currency_field="currency_id", - ) - - payment_part_one = fields.Float( - string="Payment 1 Part (%)", - default=100, - digits="Account", - ) - payment_part_two = fields.Float( - string="Payment 2 Part (%)", - digits="Account", - ) - payment_part_three = fields.Float( - string="Payment 3 Part (%)", - digits="Account", - ) - - @api.depends("name") - def _compute_display_name(self): - for record in self: - record.display_name = "№{} {}".format( - record.counter or record.contract_id.contract_annex_number, record.name - ) - - @api.depends("contract_id", "order_id") - def _compute_specification_name(self): - self.specification_name = _("{name} from {date}").format( - name="{}-{}".format(self.contract_id.name, self.order_id.name), - date=self.contract_id.get_date().strftime("%d.%m.%Y"), - ) - - @api.onchange("order_id") - def _domain_order_id(self): - """Using domain function because of - simple domain does not working properly because of - contract_id is still False""" - return { - "domain": { - "order_id": [ - ("partner_id", "=", self.contract_id.partner_id.id), - ("contract_annex_id", "=", False), - ] - } - } - - @api.onchange("order_id") - def _onchange_order_id(self): - contract_number = self.contract_id.name - order_number = self.order_id.name or "SO###" - - self.name = "{contract}-{order}".format( - contract=contract_number, - order=order_number, - ) - - def create(self, values_list): - _logger.debug("\n\n Values: %s\n\n", values_list) - if isinstance(values_list, dict): - values_list = [values_list] - _logger.debug("\n\n Values fixed: %s\n\n", values_list) - records = super(ContractOrderAnnex, self).create(values_list) - for record in records: - # Fill annex_id to domain it in future - # record.order_id.contract_annex_id = record.id - # Counter - record.counter = record.contract_id.contract_annex_number - record.contract_id.contract_annex_number += ( - 1 # TODO: should I use a sequence? - ) - return records - - def action_print_form(self): - view = self.env.ref( - "{}.res_partner_wizard_print_document_view".format(MODULE_NAME) - ) - return { - "name": _("Print Form of Contract Annex"), - "type": "ir.actions.act_window", - "res_model": "res.partner.contract.wizard", - "view_mode": "form", - "view_id": view.id, - "target": "new", - "context": { - "self_id": self.id, - "active_model": self._name, - "company_form": self.partner_id.company_form - if self.partner_id.is_company - else "person", - }, - } - - def get_name_by_document_template(self, document_template_id): - active_invoices = self.order_id.invoice_ids.filtered( - lambda r: r.state not in ("draft", "cancel") - ) - bill_name = active_invoices and active_invoices[-1].number - - return ( - { - "bill": "{bill_name}", - "specification": "{counter} {name}", - "approval_list": "{counter}.1 {name}-1", - "act_at": "{counter}.2 {name}-2", - "act_ad": "{counter}.3 {name}-3", - } - .get(document_template_id.document_type_name, "Unknown") - .format( - counter=self.counter, - name=self.name, - bill_name=(bill_name or "Счёт отсутствует"), - ) - ) - - def get_filename_by_document_template(self, document_template_id): - return "{type} №{name}".format( - type=_( - dict(document_template_id._fields["document_type"].selection).get( - document_template_id.document_type - ) - ), - name={ - "bill": "{counter} {type} {name}", - "specification": "{counter} {type} {name}", - "approval_list": "{counter}.1 {type} {name}-1", - "act_at": "{counter}.2 {type} {name}-2", - "act_ad": "{counter}.3 {type} {name}-3", - } - .get(document_template_id.document_type_name, "Unknown") - .format( - counter=self.counter, - type=_( - dict( - document_template_id._fields["document_type_name"].selection - ).get(document_template_id.document_type_name) - ), - name=self.name, - ), - ) - - def modf(self, arg): - """Math.modf function for using in XML ir.action.server code - Uses in data/fields_default.xml - """ - return math.modf(arg) diff --git a/models/res_partner_contract_field.py b/models/res_partner_contract_field.py deleted file mode 100755 index 0d8f3e3..0000000 --- a/models/res_partner_contract_field.py +++ /dev/null @@ -1,33 +0,0 @@ -from odoo import fields, models - - -class ContractField(models.Model): - _name = "res.partner.contract.field" - _description = "Contract Field" - _order = "sequence" - - name = fields.Char( - string="Name", - required=True, - translate=True, - ) - technical_name = fields.Char( - string="Technical Name", - help="Name for using in templates", - required=True, - ) - description = fields.Char( - string="Description", - help="Description for this field to be showed in fields list in print form creation wizard.", - translate=True, - default="", - ) - sequence = fields.Integer( - string="Sequence", - ) - visible = fields.Boolean( - string="Visible", - help="To show this field in fields list in print form creation wizard\n" - "User can change showed field's values in wizard.", - default=True, - ) diff --git a/models/res_partner_contract_field_transient.py b/models/res_partner_contract_field_transient.py deleted file mode 100755 index efbff8e..0000000 --- a/models/res_partner_contract_field_transient.py +++ /dev/null @@ -1,38 +0,0 @@ -from odoo import fields, models - - -class ContractFieldTransient(models.TransientModel): - _name = "res.partner.contract.field.transient" - _description = "Contract Field Transient" - - _contract_wizard_id = fields.Many2one( - "res.partner.contract.wizard", - string="Contract", - readonly=True, - ) - contract_field_id = fields.Many2one( - "res.partner.contract.field", - string="Field", - ) - name = fields.Char( - related="contract_field_id.name", - string="Name", - readonly=True, - ) - technical_name = fields.Char( - related="contract_field_id.technical_name", - string="Technical Name", - readonly=True, - ) - description = fields.Char( - related="contract_field_id.description", - string="Description", - readonly=True, - ) - visible = fields.Boolean( - related="contract_field_id.visible", - ) - value = fields.Char( - string="Value", - default="", - ) diff --git a/models/res_partner_document_template.py b/models/res_partner_document_template.py deleted file mode 100755 index f488b0c..0000000 --- a/models/res_partner_document_template.py +++ /dev/null @@ -1,50 +0,0 @@ -from odoo import _, fields, models - - -class DocumentTemplate(models.Model): - _name = "res.partner.document.template" - _description = "Document Template" - _order = "template_type desc,company_type,sequence" - - name = fields.Char() - attachment_id = fields.Many2one( - "ir.attachment", - string="Template Attachment", - ondelete="cascade", - required=True, - ) - document_type = fields.Selection( - string="Type of document", - selection=[ - ("contract", _("Contract")), - ("annex", _("Annex")), - ("addition", _("Addition")), - ("offer", _("Offer")), - ], - ) - document_type_name = fields.Selection( - string="Document", - selection=[ - ("offer", _("Offer")), - ("bill", _("Bill")), - ("specification", _("Specification")), - ("approval_list", _("Approval List")), - ("act_at", _("Act of Acceptance and Transfer")), - ("act_ad", _("Act of Acceptance and Delivery")), - ], - ) - company_type = fields.Selection( - selection=[ - ("person", "Individual"), - ("sp", "Sole Proprietor"), - ("plc", "Private Limited Company"), - ] - ) - template_type = fields.Selection( - selection=[ - ("contract", "Contract"), - ("annex", "Annex"), - ("offer", _("Offer")), - ] - ) - sequence = fields.Integer() diff --git a/models/sale_order.py b/models/sale_order.py deleted file mode 100755 index c6c6c27..0000000 --- a/models/sale_order.py +++ /dev/null @@ -1,95 +0,0 @@ -from odoo import api, fields, models, _ - -from ..utils import MODULE_NAME - - -class SaleOrder(models.Model): - _inherit = "sale.order" - - # TODO: exists original field "commitment_date". - delivery_time = fields.Integer( - string="Delivery Time", - default=45, - ) - contract_annex_id = fields.Many2one( - comodel_name="res.partner.contract.annex", - string="Contract Annex", - compute="get_contract_annex_id", - ) - contract_annex_ids = fields.One2many( - comodel_name="res.partner.contract.annex", - inverse_name="order_id", - string="Annex for this Sale order", - help="Technical field for binding with contract annex\n" - "In form this link showed in 'contract_annex_id' field.", - ) - - # Extend default field for showing payment terms created by this module only. - payment_term_id = fields.Many2one( - comodel_name="account.payment.term", - domain=lambda self: [("id", "in", self._get_payment_terms())], - ) - - def _get_payment_terms(self): - terms = [ - self.env.ref("{}.{}".format(MODULE_NAME, external_id)).id - for external_id in ( - "payment_term_prepaid", - "payment_term_postpayment", - "payment_term_partial_2", - "payment_term_partial_3", - ) - ] - return terms - - @api.onchange("contract_annex_ids") - def get_contract_annex_id(self): - if self.contract_annex_ids: - self.contract_annex_id = self.contract_annex_ids[0].id - else: - self.contract_annex_id = False - - def action_print_form(self): - self.ensure_one() - view = self.env.ref( - "{}.res_partner_wizard_print_document_view".format(MODULE_NAME) - ) - return { - "name": _("Print Form of Contract"), - "type": "ir.actions.act_window", - "res_model": "res.partner.contract.wizard", - "view_mode": "form", - "view_id": view.id, - "target": "new", - "context": { - "self_id": self.id, - "active_model": self._name, - "company_form": self.partner_id.company_form - if self.partner_id.is_company - else "person", - "attachment_model": "sale.order", - }, - } - - def get_filename_by_document_template(self, document_template_id): - self.ensure_one() - return "{doc_type} {number} {from_} {date}".format( - doc_type=_("Offer"), - number=self.name, - from_=_("from"), - date=self.date_order.strftime("%d.%m.%Y"), - ) - - @staticmethod - def _t(arg): - """Uses in xml action (data/fields_default) - Arguments: - arg {str} -- String to translate - """ - return _(arg) - - @staticmethod - def to_fixed(number, digit=2): - if isinstance(number, str) and number.isdigit(): - number = float(number) - return f"{number:.{digit}f}" diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv deleted file mode 100755 index 9ff1cd8..0000000 --- a/security/ir.model.access.csv +++ /dev/null @@ -1,12 +0,0 @@ -id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink - -access_contracts_contracts,access_contracts_contracts,model_res_partner_contract,base.group_user,1,1,1,1 - -access_contracts_field,access_contracts_field,model_res_partner_contract_field,base.group_user,1,0,0,0 -access_contracts_field_manager,access_contracts_field,model_res_partner_contract_field,base.group_no_one,1,1,1,1 - -access_contracts_field_transient,access_contracts_field_transient,model_res_partner_contract_field_transient,base.group_user,1,1,1,1 -access_contracts_field_contract_annex,access_contracts_field_contract_annex,model_res_partner_contract_annex,base.group_user,1,1,1,1 -access_contract_document_template,access_contract_document_template,model_res_partner_document_template,base.group_user,1,0,0,0 -access_contract_document_template_manager,access_contract_document_template,model_res_partner_document_template,base.group_no_one,1,1,1,1 -access_contracts_wizard,access_contracts_wizard,model_res_partner_contract_wizard,base.group_user,1,1,1,1 diff --git a/utils/__init__.py b/utils/__init__.py index 73af1c3..6d0f55e 100755 --- a/utils/__init__.py +++ b/utils/__init__.py @@ -1,3 +1 @@ -from . import misc - MODULE_NAME = __package__.split(".")[-2] diff --git a/utils/docxtpl.py b/utils/docxtpl.py deleted file mode 100755 index 9971000..0000000 --- a/utils/docxtpl.py +++ /dev/null @@ -1,26 +0,0 @@ -import io - -from docxtpl import DocxTemplate -from jinja2 import Environment as Jinja2Environment - -from .num2words import num2words_, num2words_currency - - -def get_document_from_values_stream(path_to_template: str, vals: dict): - doc = DocxTemplate(path_to_template) - - jinja_env = Jinja2Environment() - - functions = { - "number2words": num2words_, - "currency2words": num2words_currency, - } - jinja_env.globals.update(**functions) - - doc.render(vals, jinja_env) - - file_stream = io.BytesIO() - doc.save(file_stream) - file_stream.seek(0) - - return file_stream diff --git a/utils/misc.py b/utils/misc.py deleted file mode 100755 index 813fca3..0000000 --- a/utils/misc.py +++ /dev/null @@ -1,11 +0,0 @@ -from odoo import models - - -class Utils(models.AbstractModel): - _name = "client_contracts.utils" - - @staticmethod - def to_fixed(number, digit=2): - if isinstance(number, str) and number.isdigit(): - number = float(number) - return f"{number:.{digit}f}" diff --git a/views/ir_actions_report_views.xml b/views/ir_actions_report_views.xml new file mode 100755 index 0000000..1b81cfe --- /dev/null +++ b/views/ir_actions_report_views.xml @@ -0,0 +1,18 @@ + + + + + ir.actions.report.inherit.view.form + ir.actions.report + + + + {'required': [('report_type', 'not in', ['docx-docx'])]} + + + + + + + + diff --git a/views/res_partner.xml b/views/res_partner.xml deleted file mode 100755 index c8613ec..0000000 --- a/views/res_partner.xml +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - Contract Fields - ir.actions.act_window - res.partner.contract.field - tree,form - - - - - Document Templates - ir.actions.act_window - res.partner.document.template - tree,form - - - - res.partner.contract.info - res.partner - - - - - - Name in ERP - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - res.partner.contract.view.buttons - res.partner - - - - - - - - - - - - - - - - - diff --git a/views/res_partner_contract.xml b/views/res_partner_contract.xml deleted file mode 100755 index 6e2c40d..0000000 --- a/views/res_partner_contract.xml +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - Contracts - res.partner.contract - - - - - - - - - - - - - Contract Form - res.partner.contract - -
-
-
- - - - - - - - - - - - - - - - -