diff --git a/customer_activity_statement/README.rst b/customer_activity_statement/README.rst new file mode 100644 index 00000000..e0b84469 --- /dev/null +++ b/customer_activity_statement/README.rst @@ -0,0 +1,75 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +================================= +Print Customer Activity Statement +================================= + +The activity statement provides details of all activity on the customer receivables +between two selected dates. This includes all invoices, refunds and payments. +Any outstanding balance dated prior to the chosen statement period will appear +as a forward balance at the top of the statement. The list is displayed in chronological +order and is split by currencies. + +Aging details can be shown in the report, expressed in aging buckets (30 days +due, ...), so the customer can review how much is open, due or overdue. + +Configuration +============= + +Users willing to access to this report should have proper Accounting & Finance rights: + +#. Go to *Settings / Users* and edit your user to add the corresponding access rights as follows. +#. In *Application / Accounting & Finance*, select *Billing* or *Billing Manager* +#. In *Technical Setting* mark *Show Full Accounting Features* options. + +Usage +===== + +To use this module, you need to: + +#. Go to Invoicing > Sales > Master Data > Customers and select one or more +#. Press 'Action > Customer Activity Statement' +#. Indicate if you want to display aging buckets + + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/91/11.0 + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, +please check there if your issue has already been reported. If you spotted it +first, help us smash it by providing detailed and welcomed feedback. + +Credits +======= + +Images +------ + +* Odoo Community Association: `Icon `_. + +Contributors +------------ + +* Miquel Raïch + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/customer_activity_statement/__init__.py b/customer_activity_statement/__init__.py new file mode 100644 index 00000000..997d84a6 --- /dev/null +++ b/customer_activity_statement/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from . import report +from . import wizard diff --git a/customer_activity_statement/__manifest__.py b/customer_activity_statement/__manifest__.py new file mode 100644 index 00000000..cc9d3cc1 --- /dev/null +++ b/customer_activity_statement/__manifest__.py @@ -0,0 +1,22 @@ +# Copyright 2018 Eficent Business and IT Consulting Services S.L. +# (http://www.eficent.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +{ + 'name': 'Customer Activity Statement', + 'version': '11.0.1.0.0', + 'category': 'Accounting & Finance', + 'summary': 'OCA Financial Reports', + 'author': "Eficent, Odoo Community Association (OCA)", + 'website': 'https://github.com/OCA/account-financial-reporting', + 'license': 'AGPL-3', + 'depends': [ + 'account_invoicing', + ], + 'data': [ + 'views/statement.xml', + 'wizard/customer_activity_statement_wizard.xml', + ], + 'installable': True, + 'application': False, +} diff --git a/customer_activity_statement/i18n/ca.po b/customer_activity_statement/i18n/ca.po new file mode 100644 index 00000000..57f6a98e --- /dev/null +++ b/customer_activity_statement/i18n/ca.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# Marc Tormo i Bochaca , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-26 02:44+0000\n" +"PO-Revision-Date: 2017-04-26 02:44+0000\n" +"Last-Translator: Marc Tormo i Bochaca , 2017\n" +"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging " +"buckets (30 days due, ...), so the customer can review how much is open, due" +" or overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "Balanç " + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Cancel·lar " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Empresa " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Creat per " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Creat a " + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Nom a mostrar " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "Última modificació a " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "Última actualització per " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "Última actualització a " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to " +"the chosen statement period will appear as a forward balance at " +"the top of the statement. The list is displayed in chronological" +" order and is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "o" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/de.po b/customer_activity_statement/i18n/de.po new file mode 100644 index 00000000..db1d62b3 --- /dev/null +++ b/customer_activity_statement/i18n/de.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-26 02:44+0000\n" +"PO-Revision-Date: 2017-04-26 02:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging " +"buckets (30 days due, ...), so the customer can review how much is open, due" +" or overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Abbrechen" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Unternehmen" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Angelegt von" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Angelegt am" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Datum" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Export PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "Zuletzt geändert am" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "Zuletzt aktualisiert durch" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "Zuletzt aktualisiert am" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to " +"the chosen statement period will appear as a forward balance at " +"the top of the statement. The list is displayed in chronological" +" order and is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "oder" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/es.po b/customer_activity_statement/i18n/es.po new file mode 100644 index 00000000..f21cccc0 --- /dev/null +++ b/customer_activity_statement/i18n/es.po @@ -0,0 +1,238 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# OCA Transbot , 2017 +# Gelo Joga Landoo , 2017 +# Pedro M. Baeza , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-22 16:14+0000\n" +"PO-Revision-Date: 2017-12-22 16:14+0000\n" +"Last-Translator: Pedro M. Baeza , 2017\n" +"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging buckets" +" (30 days due, ...), so the customer can review how much is open, due or " +"overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "Cuota" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Cancelar" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Compañía" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Creado en" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Fecha" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "Descripción" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Nombre a mostrar" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Exportar a PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "Última modificación en" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "Última modificación por" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "Última actualización en" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to the " +"chosen statement period will appear as a forward balance at the top " +"of the statement. The list is displayed in chronological order and " +"is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "o" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/fr.po b/customer_activity_statement/i18n/fr.po new file mode 100644 index 00000000..551ae06b --- /dev/null +++ b/customer_activity_statement/i18n/fr.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-26 02:44+0000\n" +"PO-Revision-Date: 2017-04-26 02:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging " +"buckets (30 days due, ...), so the customer can review how much is open, due" +" or overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Annuler" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Société" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Créé par" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Créé le" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Date" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Nom affiché" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Export PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "Dernière modification le" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "Dernière mise à jour par" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "Dernière mise à jour le" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to " +"the chosen statement period will appear as a forward balance at " +"the top of the statement. The list is displayed in chronological" +" order and is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "ou" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/hr_HR.po b/customer_activity_statement/i18n/hr_HR.po new file mode 100644 index 00000000..07e75c1f --- /dev/null +++ b/customer_activity_statement/i18n/hr_HR.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# Bole , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-22 16:14+0000\n" +"PO-Revision-Date: 2017-12-22 16:14+0000\n" +"Last-Translator: Bole , 2017\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr_HR\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging buckets" +" (30 days due, ...), so the customer can review how much is open, due or " +"overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "Saldo" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Otkaži" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Tvrtka" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Kreirao" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Kreirano" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Datum" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Naziv " + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Izvoz PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to the " +"chosen statement period will appear as a forward balance at the top " +"of the statement. The list is displayed in chronological order and " +"is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "ili" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/it.po b/customer_activity_statement/i18n/it.po new file mode 100644 index 00000000..0d37ad4e --- /dev/null +++ b/customer_activity_statement/i18n/it.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# Stefano , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-22 23:13+0000\n" +"PO-Revision-Date: 2017-12-22 23:13+0000\n" +"Last-Translator: Stefano , 2017\n" +"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging buckets" +" (30 days due, ...), so the customer can review how much is open, due or " +"overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Cancellare" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Azienda" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Data" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Nome mostrato" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to the " +"chosen statement period will appear as a forward balance at the top " +"of the statement. The list is displayed in chronological order and " +"is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "o" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/nl_NL.po b/customer_activity_statement/i18n/nl_NL.po new file mode 100644 index 00000000..748df7eb --- /dev/null +++ b/customer_activity_statement/i18n/nl_NL.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# Peter Hageman , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-22 16:14+0000\n" +"PO-Revision-Date: 2017-12-22 16:14+0000\n" +"Last-Translator: Peter Hageman , 2017\n" +"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/teams/23907/nl_NL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl_NL\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging buckets" +" (30 days due, ...), so the customer can review how much is open, due or " +"overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Annuleer" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Bedrijf" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Datum" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Export PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to the " +"chosen statement period will appear as a forward balance at the top " +"of the statement. The list is displayed in chronological order and " +"is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/i18n/pt.po b/customer_activity_statement/i18n/pt.po new file mode 100644 index 00000000..5ad9f619 --- /dev/null +++ b/customer_activity_statement/i18n/pt.po @@ -0,0 +1,236 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * customer_activity_statement +# +# Translators: +# Pedro Castro Silva , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-22 16:14+0000\n" +"PO-Revision-Date: 2017-12-22 16:14+0000\n" +"Last-Translator: Pedro Castro Silva , 2017\n" +"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "+120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "1-30 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "30-60 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "60-90 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "90-120 Days Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "The partner doesn't have due entries." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Activity Statement in" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"Aging details can be shown in the report, expressed in aging buckets" +" (30 days due, ...), so the customer can review how much is open, due or " +"overdue." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Amount" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance" +msgstr "Saldo" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Balance Forward" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Cancel" +msgstr "Cancelar" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_company_id +msgid "Company" +msgstr "Empresa" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_uid +msgid "Created by" +msgstr "Criado por" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_create_date +msgid "Created on" +msgstr "Criado em" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Current Due" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.act_window,name:customer_activity_statement.customer_activity_statement_wizard_action +msgid "Customer Activity Statement" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_customer_activity_statement_wizard +msgid "Customer Activity Statement Wizard" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date" +msgstr "Data" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_end +msgid "Date end" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_date_start +msgid "Date start" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Date:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Description" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_display_name +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_display_name +msgid "Display Name" +msgstr "Exibir nome" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_filter_partners_non_due +msgid "Don't show partners with no due entries" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Ending Balance" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "Export PDF" +msgstr "Exportar PDF" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_id +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement_id +msgid "ID" +msgstr "ID" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_show_aging_buckets +msgid "Include Aging Buckets" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard___last_update +#: model:ir.model.fields,field_description:customer_activity_statement.field_report_customer_activity_statement_statement___last_update +msgid "Last Modified on" +msgstr "Última modificação em" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_uid +msgid "Last Updated by" +msgstr "Última atualização em" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_write_date +msgid "Last Updated on" +msgstr "Última atualização por" + +#. module: customer_activity_statement +#: model:ir.model.fields,field_description:customer_activity_statement.field_customer_activity_statement_wizard_number_partner_ids +msgid "Number partner ids" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Partner ref:" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.statement_document +msgid "Reference number" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.actions.report.xml,name:customer_activity_statement.action_print_customer_activity_statement +msgid "Statement Action to PDF" +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "" +"The activity statement provides details of all activity on the " +"customer receivables between two selected dates. This includes all invoices," +" refunds and payments. Any outstanding balance dated prior to the " +"chosen statement period will appear as a forward balance at the top " +"of the statement. The list is displayed in chronological order and " +"is split by currencies." +msgstr "" + +#. module: customer_activity_statement +#: model:ir.ui.view,arch_db:customer_activity_statement.customer_activity_statement_wizard_view +msgid "or" +msgstr "ou" + +#. module: customer_activity_statement +#: model:ir.model,name:customer_activity_statement.model_report_customer_activity_statement_statement +msgid "report.customer_activity_statement.statement" +msgstr "" diff --git a/customer_activity_statement/report/__init__.py b/customer_activity_statement/report/__init__.py new file mode 100644 index 00000000..bc3fd583 --- /dev/null +++ b/customer_activity_statement/report/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from . import customer_activity_statement diff --git a/customer_activity_statement/report/customer_activity_statement.py b/customer_activity_statement/report/customer_activity_statement.py new file mode 100644 index 00000000..7d2253a9 --- /dev/null +++ b/customer_activity_statement/report/customer_activity_statement.py @@ -0,0 +1,388 @@ +# Copyright 2018 Eficent Business and IT Consulting Services S.L. +# (http://www.eficent.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from datetime import datetime, timedelta +from odoo.tools.misc import DEFAULT_SERVER_DATE_FORMAT +from odoo import api, fields, models + + +class CustomerActivityStatement(models.AbstractModel): + """Model of Customer Activity Statement""" + + _name = 'report.customer_activity_statement.statement' + + def _format_date_to_partner_lang(self, str_date, partner_id): + lang_code = self.env['res.partner'].browse(partner_id).lang + lang = self.env['res.lang']._lang_get(lang_code) + date = datetime.strptime(str_date, DEFAULT_SERVER_DATE_FORMAT).date() + return date.strftime(lang.date_format) + + def _initial_balance_sql_q1(self, partners, date_start): + return """ + SELECT l.partner_id, l.currency_id, l.company_id, + CASE WHEN l.currency_id is not null AND l.amount_currency > 0.0 + THEN sum(l.amount_currency) + ELSE sum(l.debit) + END as debit, + CASE WHEN l.currency_id is not null AND l.amount_currency < 0.0 + THEN sum(l.amount_currency * (-1)) + ELSE sum(l.credit) + END as credit + FROM account_move_line l + JOIN account_account_type at ON (at.id = l.user_type_id) + JOIN account_move m ON (l.move_id = m.id) + WHERE l.partner_id IN (%s) AND at.type = 'receivable' + AND l.date < '%s' AND not l.blocked + GROUP BY l.partner_id, l.currency_id, l.amount_currency, + l.company_id + """ % (partners, date_start) + + def _initial_balance_sql_q2(self, company_id): + return """ + SELECT Q1.partner_id, debit-credit AS balance, + COALESCE(Q1.currency_id, c.currency_id) AS currency_id + FROM Q1 + JOIN res_company c ON (c.id = Q1.company_id) + WHERE c.id = %s + """ % company_id + + def _get_account_initial_balance(self, company_id, partner_ids, + date_start): + res = dict(map(lambda x: (x, []), partner_ids)) + partners = ', '.join([str(i) for i in partner_ids]) + date_start = datetime.strptime( + date_start, DEFAULT_SERVER_DATE_FORMAT).date() + # pylint: disable=E8103 + self.env.cr.execute("""WITH Q1 AS (%s), Q2 AS (%s) + SELECT partner_id, currency_id, balance + FROM Q2""" % (self._initial_balance_sql_q1(partners, date_start), + self._initial_balance_sql_q2(company_id))) + for row in self.env.cr.dictfetchall(): + res[row.pop('partner_id')].append(row) + return res + + def _display_lines_sql_q1(self, partners, date_start, date_end): + return """ + SELECT m.name AS move_id, l.partner_id, l.date, l.name, + l.ref, l.blocked, l.currency_id, l.company_id, + CASE WHEN (l.currency_id is not null AND l.amount_currency > 0.0) + THEN sum(l.amount_currency) + ELSE sum(l.debit) + END as debit, + CASE WHEN (l.currency_id is not null AND l.amount_currency < 0.0) + THEN sum(l.amount_currency * (-1)) + ELSE sum(l.credit) + END as credit, + CASE WHEN l.date_maturity is null + THEN l.date + ELSE l.date_maturity + END as date_maturity + FROM account_move_line l + JOIN account_account_type at ON (at.id = l.user_type_id) + JOIN account_move m ON (l.move_id = m.id) + WHERE l.partner_id IN (%s) AND at.type = 'receivable' + AND '%s' <= l.date AND l.date <= '%s' + GROUP BY l.partner_id, m.name, l.date, l.date_maturity, l.name, + l.ref, l.blocked, l.currency_id, + l.amount_currency, l.company_id + """ % (partners, date_start, date_end) + + def _display_lines_sql_q2(self, company_id): + return """ + SELECT Q1.partner_id, move_id, date, date_maturity, Q1.name, ref, + debit, credit, debit-credit as amount, blocked, + COALESCE(Q1.currency_id, c.currency_id) AS currency_id + FROM Q1 + JOIN res_company c ON (c.id = Q1.company_id) + WHERE c.id = %s + """ % company_id + + def _get_account_display_lines(self, company_id, partner_ids, date_start, + date_end): + res = dict(map(lambda x: (x, []), partner_ids)) + partners = ', '.join([str(i) for i in partner_ids]) + date_start = datetime.strptime( + date_start, DEFAULT_SERVER_DATE_FORMAT).date() + date_end = datetime.strptime( + date_end, DEFAULT_SERVER_DATE_FORMAT).date() + # pylint: disable=E8103 + self.env.cr.execute("""WITH Q1 AS (%s), Q2 AS (%s) + SELECT partner_id, move_id, date, date_maturity, name, ref, debit, + credit, amount, blocked, currency_id + FROM Q2 + ORDER BY date, date_maturity, move_id""" % ( + self._display_lines_sql_q1(partners, date_start, date_end), + self._display_lines_sql_q2(company_id))) + for row in self.env.cr.dictfetchall(): + res[row.pop('partner_id')].append(row) + return res + + def _show_buckets_sql_q0(self, date_end): + return """ + SELECT l1.id, + CASE WHEN l1.reconciled = TRUE and l1.balance > 0.0 + THEN max(pd.max_date) + WHEN l1.reconciled = TRUE and l1.balance < 0.0 + THEN max(pc.max_date) + ELSE null + END as reconciled_date + FROM account_move_line l1 + LEFT JOIN (SELECT pr.* + FROM account_partial_reconcile pr + INNER JOIN account_move_line l2 + ON pr.credit_move_id = l2.id + WHERE l2.date <= '%s' + ) as pd ON pd.debit_move_id = l1.id + LEFT JOIN (SELECT pr.* + FROM account_partial_reconcile pr + INNER JOIN account_move_line l2 + ON pr.debit_move_id = l2.id + WHERE l2.date <= '%s' + ) as pc ON pc.credit_move_id = l1.id + GROUP BY l1.id + """ % (date_end, date_end) + + def _show_buckets_sql_q1(self, partners, date_end): + return """ + SELECT l.partner_id, l.currency_id, l.company_id, l.move_id, + CASE WHEN l.balance > 0.0 + THEN l.balance - sum(coalesce(pd.amount, 0.0)) + ELSE l.balance + sum(coalesce(pc.amount, 0.0)) + END AS open_due, + CASE WHEN l.balance > 0.0 + THEN l.amount_currency - sum(coalesce(pd.amount_currency, 0.0)) + ELSE l.amount_currency + sum(coalesce(pc.amount_currency, 0.0)) + END AS open_due_currency, + CASE WHEN l.date_maturity is null + THEN l.date + ELSE l.date_maturity + END as date_maturity + FROM account_move_line l + JOIN account_account_type at ON (at.id = l.user_type_id) + JOIN account_move m ON (l.move_id = m.id) + LEFT JOIN Q0 ON Q0.id = l.id + LEFT JOIN (SELECT pr.* + FROM account_partial_reconcile pr + INNER JOIN account_move_line l2 + ON pr.credit_move_id = l2.id + WHERE l2.date <= '%s' + ) as pd ON pd.debit_move_id = l.id + LEFT JOIN (SELECT pr.* + FROM account_partial_reconcile pr + INNER JOIN account_move_line l2 + ON pr.debit_move_id = l2.id + WHERE l2.date <= '%s' + ) as pc ON pc.credit_move_id = l.id + WHERE l.partner_id IN (%s) AND at.type = 'receivable' + AND (Q0.reconciled_date is null or + Q0.reconciled_date > '%s') + AND l.date <= '%s' AND not l.blocked + GROUP BY l.partner_id, l.currency_id, l.date, l.date_maturity, + l.amount_currency, l.balance, l.move_id, + l.company_id + """ % (date_end, date_end, partners, date_end, date_end) + + def _show_buckets_sql_q2(self, date_end, minus_30, minus_60, minus_90, + minus_120): + return """ + SELECT partner_id, currency_id, date_maturity, open_due, + open_due_currency, move_id, company_id, + CASE + WHEN '%s' <= date_maturity AND currency_id is null + THEN open_due + WHEN '%s' <= date_maturity AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as current, + CASE + WHEN '%s' < date_maturity AND date_maturity < '%s' + AND currency_id is null THEN open_due + WHEN '%s' < date_maturity AND date_maturity < '%s' + AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as b_1_30, + CASE + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is null THEN open_due + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as b_30_60, + CASE + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is null THEN open_due + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as b_60_90, + CASE + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is null THEN open_due + WHEN '%s' < date_maturity AND date_maturity <= '%s' + AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as b_90_120, + CASE + WHEN date_maturity <= '%s' AND currency_id is null + THEN open_due + WHEN date_maturity <= '%s' AND currency_id is not null + THEN open_due_currency + ELSE 0.0 + END as b_over_120 + FROM Q1 + GROUP BY partner_id, currency_id, date_maturity, open_due, + open_due_currency, move_id, company_id + """ % (date_end, date_end, minus_30, date_end, minus_30, date_end, + minus_60, minus_30, minus_60, minus_30, minus_90, minus_60, + minus_90, minus_60, minus_120, minus_90, minus_120, minus_90, + minus_120, minus_120) + + def _show_buckets_sql_q3(self, company_id): + return """ + SELECT Q2.partner_id, current, b_1_30, b_30_60, b_60_90, b_90_120, + b_over_120, + COALESCE(Q2.currency_id, c.currency_id) AS currency_id + FROM Q2 + JOIN res_company c ON (c.id = Q2.company_id) + WHERE c.id = %s + """ % company_id + + def _show_buckets_sql_q4(self): + return """ + SELECT partner_id, currency_id, sum(current) as current, + sum(b_1_30) as b_1_30, + sum(b_30_60) as b_30_60, + sum(b_60_90) as b_60_90, + sum(b_90_120) as b_90_120, + sum(b_over_120) as b_over_120 + FROM Q3 + GROUP BY partner_id, currency_id + """ + + def _get_bucket_dates(self, date_end): + return { + 'date_end': date_end, + 'minus_30': date_end - timedelta(days=30), + 'minus_60': date_end - timedelta(days=60), + 'minus_90': date_end - timedelta(days=90), + 'minus_120': date_end - timedelta(days=120), + } + + def _get_account_show_buckets(self, company_id, partner_ids, date_end): + res = dict(map(lambda x: (x, []), partner_ids)) + partners = ', '.join([str(i) for i in partner_ids]) + date_end = datetime.strptime( + date_end, DEFAULT_SERVER_DATE_FORMAT).date() + full_dates = self._get_bucket_dates(date_end) + # pylint: disable=E8103 + self.env.cr.execute(""" + WITH Q0 AS (%s), Q1 AS (%s), Q2 AS (%s), Q3 AS (%s), Q4 AS (%s) + SELECT partner_id, currency_id, current, b_1_30, b_30_60, b_60_90, + b_90_120, b_over_120, + current+b_1_30+b_30_60+b_60_90+b_90_120+b_over_120 + AS balance + FROM Q4 + GROUP BY partner_id, currency_id, current, b_1_30, b_30_60, b_60_90, + b_90_120, b_over_120""" % ( + self._show_buckets_sql_q0(date_end), + self._show_buckets_sql_q1(partners, date_end), + self._show_buckets_sql_q2( + full_dates['date_end'], + full_dates['minus_30'], + full_dates['minus_60'], + full_dates['minus_90'], + full_dates['minus_120']), + self._show_buckets_sql_q3(company_id), + self._show_buckets_sql_q4())) + for row in self.env.cr.dictfetchall(): + res[row.pop('partner_id')].append(row) + return res + + @api.multi + def get_report_values(self, docids, data): + company_id = data['company_id'] + partner_ids = data['partner_ids'] + date_start = data['date_start'] + date_end = data['date_end'] + today = fields.Date.today() + + balance_start_to_display, buckets_to_display = {}, {} + lines_to_display, amount_due = {}, {} + currency_to_display = {} + today_display, date_start_display, date_end_display = {}, {}, {} + + balance_start = self._get_account_initial_balance( + company_id, partner_ids, date_start) + + for partner_id in partner_ids: + balance_start_to_display[partner_id] = {} + for line in balance_start[partner_id]: + currency = self.env['res.currency'].browse(line['currency_id']) + if currency not in balance_start_to_display[partner_id]: + balance_start_to_display[partner_id][currency] = [] + balance_start_to_display[partner_id][currency] = \ + line['balance'] + + lines = self._get_account_display_lines( + company_id, partner_ids, date_start, date_end) + + for partner_id in partner_ids: + lines_to_display[partner_id], amount_due[partner_id] = {}, {} + currency_to_display[partner_id] = {} + today_display[partner_id] = self._format_date_to_partner_lang( + today, partner_id) + date_start_display[partner_id] = self._format_date_to_partner_lang( + date_start, partner_id) + date_end_display[partner_id] = self._format_date_to_partner_lang( + date_end, partner_id) + for line in lines[partner_id]: + currency = self.env['res.currency'].browse(line['currency_id']) + if currency not in lines_to_display[partner_id]: + lines_to_display[partner_id][currency] = [] + currency_to_display[partner_id][currency] = currency + if currency in balance_start_to_display[partner_id]: + amount_due[partner_id][currency] = \ + balance_start_to_display[partner_id][currency] + else: + amount_due[partner_id][currency] = 0.0 + if not line['blocked']: + amount_due[partner_id][currency] += line['amount'] + line['balance'] = amount_due[partner_id][currency] + line['date'] = self._format_date_to_partner_lang( + line['date'], partner_id) + line['date_maturity'] = self._format_date_to_partner_lang( + line['date_maturity'], partner_id) + lines_to_display[partner_id][currency].append(line) + + if data['show_aging_buckets']: + buckets = self._get_account_show_buckets( + company_id, partner_ids, date_end) + for partner_id in partner_ids: + buckets_to_display[partner_id] = {} + for line in buckets[partner_id]: + currency = self.env['res.currency'].browse( + line['currency_id']) + if currency not in buckets_to_display[partner_id]: + buckets_to_display[partner_id][currency] = [] + buckets_to_display[partner_id][currency] = line + + return { + 'doc_ids': partner_ids, + 'doc_model': 'res.partner', + 'docs': self.env['res.partner'].browse(partner_ids), + 'Amount_Due': amount_due, + 'Balance_forward': balance_start_to_display, + 'Lines': lines_to_display, + 'Buckets': buckets_to_display, + 'Currencies': currency_to_display, + 'Show_Buckets': data['show_aging_buckets'], + 'Filter_non_due_partners': data['filter_non_due_partners'], + 'Date_start': date_start_display, + 'Date_end': date_end_display, + 'Date': today_display, + } diff --git a/customer_activity_statement/static/description/Activity_Statement.png b/customer_activity_statement/static/description/Activity_Statement.png new file mode 100644 index 00000000..e730c3a7 Binary files /dev/null and b/customer_activity_statement/static/description/Activity_Statement.png differ diff --git a/customer_activity_statement/static/description/icon.png b/customer_activity_statement/static/description/icon.png new file mode 100644 index 00000000..3a0328b5 Binary files /dev/null and b/customer_activity_statement/static/description/icon.png differ diff --git a/customer_activity_statement/static/description/index.html b/customer_activity_statement/static/description/index.html new file mode 100644 index 00000000..163c9323 --- /dev/null +++ b/customer_activity_statement/static/description/index.html @@ -0,0 +1,78 @@ +
+
+
+

Customer Activity Statement

+
+
+
+ +
+
+
+

The activity statement provides +details of all activity on the customer receivables between two selected dates. This +includes all invoices, refunds and payments. Any outstanding balance dated prior to +the chosen statement period will appear as a forward balance at the top of the statement. +The list is displayed in chronological order and is split by currencies.

Aging +details can be shown in the report, expressed in aging buckets (30 days due, ...), +so the customer can review how much is open, due or overdue.

+
+
+
+ +
+
+
+

Configuration

+
+
+

To configure this module, you need to: +

    +
  • Go to Settings / Users and edit your user to add the corresponding access rights as follows.
  • +
  • In Application / Accounting & Finance, select Billing or Billing Manager options.
  • +
  • In Technical Setting mark Show Full Accounting Features options.
  • +
+

+
+
+
+ +
+
+
+

Usage

+
+
+

To use this module, you need to: +

    +
  • Go to Invoicing > Sales > Master Data > Customers and select one or more
  • +
  • Press 'Action > Customer Activity Statement'
  • +
  • Indicate if you want to display aging buckets
  • +
+

+
+
+
+ +
+
+
+

Credits

+
+
+

Contributors

+ +
+
+

Maintainer

+

+ This module is maintained by the OCA.
+ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.
+ To contribute to this module, please visit http://odoo-community.org.
+ +

+
+
+
\ No newline at end of file diff --git a/customer_activity_statement/tests/__init__.py b/customer_activity_statement/tests/__init__.py new file mode 100644 index 00000000..9117f0c2 --- /dev/null +++ b/customer_activity_statement/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from . import test_customer_activity_statement diff --git a/customer_activity_statement/tests/test_customer_activity_statement.py b/customer_activity_statement/tests/test_customer_activity_statement.py new file mode 100644 index 00000000..091b351d --- /dev/null +++ b/customer_activity_statement/tests/test_customer_activity_statement.py @@ -0,0 +1,67 @@ +# Copyright 2018 Eficent Business and IT Consulting Services S.L. +# (http://www.eficent.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo.tests.common import TransactionCase + + +class TestCustomerActivityStatement(TransactionCase): + """ + Tests for Customer Activity Statement. + """ + def setUp(self): + super(TestCustomerActivityStatement, self).setUp() + + self.res_users_model = self.env['res.users'] + self.company = self.env.ref('base.main_company') + self.partner1 = self.env.ref('base.res_partner_1') + self.partner2 = self.env.ref('base.res_partner_2') + self.g_account_user = self.env.ref('account.group_account_user') + + self.user = self._create_user('user_1', [self.g_account_user], + self.company).id + + self.statement_model = \ + self.env['report.customer_activity_statement.statement'] + self.wiz = self.env['customer.activity.statement.wizard'] + self.report_name = 'customer_activity_statement.statement' + self.report_title = 'Customer Activity Statement' + + def _create_user(self, login, groups, company): + group_ids = [group.id for group in groups] + user = self.res_users_model.create({ + 'name': login, + 'login': login, + 'password': 'demo', + 'email': 'example@yourcompany.com', + 'company_id': company.id, + 'company_ids': [(4, company.id)], + 'groups_id': [(6, 0, group_ids)] + }) + return user + + def test_customer_activity_statement(self): + + wiz_id = self.wiz.with_context( + active_ids=[self.partner1.id, self.partner2.id], + ).create({}) + + statement = wiz_id.button_export_pdf() + + self.assertDictContainsSubset( + { + 'type': 'ir.actions.report', + 'report_name': self.report_name, + 'report_type': 'qweb-pdf', + }, + statement, + 'There was an error and the PDF report was not generated.' + ) + + data = wiz_id._prepare_activity_statement() + docids = data['partner_ids'] + report = self.statement_model.get_report_values(docids, data) + self.assertIsInstance(report, dict, + "There was an error while compiling the report.") + self.assertIn("Show_Buckets", report, + "There was an error while compiling the report.") diff --git a/customer_activity_statement/views/statement.xml b/customer_activity_statement/views/statement.xml new file mode 100644 index 00000000..2adc580f --- /dev/null +++ b/customer_activity_statement/views/statement.xml @@ -0,0 +1,209 @@ + + + + + + + + + diff --git a/customer_activity_statement/wizard/__init__.py b/customer_activity_statement/wizard/__init__.py new file mode 100644 index 00000000..2670d954 --- /dev/null +++ b/customer_activity_statement/wizard/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from . import customer_activity_statement_wizard diff --git a/customer_activity_statement/wizard/customer_activity_statement_wizard.py b/customer_activity_statement/wizard/customer_activity_statement_wizard.py new file mode 100644 index 00000000..1898f213 --- /dev/null +++ b/customer_activity_statement/wizard/customer_activity_statement_wizard.py @@ -0,0 +1,56 @@ +# Copyright 2018 Eficent Business and IT Consulting Services S.L. +# (http://www.eficent.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from datetime import date +from odoo import api, fields, models + + +class CustomerActivityStatementWizard(models.TransientModel): + """Customer Activity Statement wizard.""" + + _name = 'customer.activity.statement.wizard' + _description = 'Customer Activity Statement Wizard' + + company_id = fields.Many2one( + comodel_name='res.company', + default=lambda self: self.env.user.company_id, + string='Company' + ) + + date_start = fields.Date(required=True, + default=fields.Date.to_string( + date(date.today().year, 1, 1))) + date_end = fields.Date(required=True, + default=fields.Date.to_string(date.today())) + show_aging_buckets = fields.Boolean(string='Include Aging Buckets', + default=True) + number_partner_ids = fields.Integer( + default=lambda self: len(self._context['active_ids']) + ) + filter_partners_non_due = fields.Boolean( + string='Don\'t show partners with no due entries', default=True) + + @api.multi + def button_export_pdf(self): + self.ensure_one() + return self._export() + + def _prepare_activity_statement(self): + self.ensure_one() + return { + 'date_start': self.date_start, + 'date_end': self.date_end, + 'company_id': self.company_id.id, + 'partner_ids': self._context['active_ids'], + 'show_aging_buckets': self.show_aging_buckets, + 'filter_non_due_partners': self.filter_partners_non_due, + } + + def _export(self): + """Export to PDF.""" + data = self._prepare_activity_statement() + return self.env.ref( + 'customer_activity_statement' + '.action_print_customer_activity_statement').report_action( + self, data=data) diff --git a/customer_activity_statement/wizard/customer_activity_statement_wizard.xml b/customer_activity_statement/wizard/customer_activity_statement_wizard.xml new file mode 100644 index 00000000..aa3911b3 --- /dev/null +++ b/customer_activity_statement/wizard/customer_activity_statement_wizard.xml @@ -0,0 +1,51 @@ + + + + + + + + + Customer Activity Statement Wizard + customer.activity.statement.wizard + +
+
+

+ + + + + + + + + + + + + + + +
+
+
+