From d829dfc31a6b0fea49a2dc4bfef2cb01a763a5dd Mon Sep 17 00:00:00 2001 From: Jordi Ballester Alomar Date: Fri, 1 May 2020 08:14:01 +0200 Subject: [PATCH] [IMP] account_financial_report: multiple fixes and improvements --- account_financial_report/i18n/es.po | 958 +++++++----------- .../report/abstract_report_xlsx.py | 25 +- .../report/aged_partner_balance.py | 64 +- .../report/aged_partner_balance_xlsx.py | 2 +- .../report/general_ledger.py | 123 ++- .../report/general_ledger_xlsx.py | 47 +- account_financial_report/report/open_items.py | 391 +++---- .../report/open_items_xlsx.py | 29 +- .../report/templates/aged_partner_balance.xml | 2 +- .../report/templates/general_ledger.xml | 21 +- .../report/templates/open_items.xml | 8 +- .../report/trial_balance.py | 76 +- account_financial_report/report/vat_report.py | 16 +- .../wizard/aged_partner_balance_wizard.py | 2 + .../aged_partner_balance_wizard_view.xml | 1 + .../wizard/general_ledger_wizard.py | 2 + .../wizard/general_ledger_wizard_view.xml | 1 + 17 files changed, 828 insertions(+), 940 deletions(-) diff --git a/account_financial_report/i18n/es.po b/account_financial_report/i18n/es.po index 8ebb34f5..5e5750f0 100644 --- a/account_financial_report/i18n/es.po +++ b/account_financial_report/i18n/es.po @@ -1,25 +1,21 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * account_financial_report +# * account_financial_report # -# Translators: -# OCA Transbot , 2017 -# Pedro M. Baeza , 2018 -# ALEJANDRO FEBLES , 2018 msgid "" msgstr "" -"Project-Id-Version: Odoo Server 11.0\n" +"Project-Id-Version: Odoo Server 12.0+e\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-05-18 22:19+0000\n" -"PO-Revision-Date: 2019-07-23 01:43+0000\n" -"Last-Translator: Josep M \n" -"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" -"Language: es\n" +"POT-Creation-Date: 2020-05-21 13:00+0000\n" +"PO-Revision-Date: 2020-05-21 15:06+0200\n" +"Last-Translator: <>\n" +"Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 3.7.1\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"Language: es\n" +"X-Generator: Poedit 2.3.1\n" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_lines_header @@ -68,52 +64,85 @@ msgid " Print" msgstr "Imprimir" #. module: account_financial_report -#: model:ir.model,name:account_financial_report.model_account_financial_report_abstract_wizard -msgid "Abstract Wizard" -msgstr "Asistente de Extracto" +#: model_terms:ir.ui.view,arch_db:account_financial_report.general_ledger_wizard +msgid "" +"\n" +" To\n" +" " +msgstr "" #. module: account_financial_report -#: model:ir.model,name:account_financial_report.model_report_account_financial_report_abstract_report_xlsx -msgid "Abstract XLSX Account Financial Report" +#: model_terms:ir.ui.view,arch_db:account_financial_report.aged_partner_balance_wizard +#: model_terms:ir.ui.view,arch_db:account_financial_report.open_items_wizard +msgid "" +"\n" +" To\n" +" " msgstr "" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: model_terms:ir.ui.view,arch_db:account_financial_report.trial_balance_wizard +msgid "To" +msgstr "" + +#. module: account_financial_report +#: model:ir.model,name:account_financial_report.model_account_financial_report_abstract_wizard +msgid "Abstract Wizard" +msgstr "Asistente de Extracto" + +#. module: account_financial_report +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:73 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:29 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:36 +#: code:addons/account_financial_report/report/open_items_xlsx.py:27 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:27 #: model:ir.model,name:account_financial_report.model_account_account #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #, python-format msgid "Account" msgstr "Cuenta" +#. module: account_financial_report +#: model:ir.model.fields,field_description:account_financial_report.field_aged_partner_balance_report_wizard__account_code_from +#: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__account_code_from +#: model:ir.model.fields,field_description:account_financial_report.field_open_items_report_wizard__account_code_from +#: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__account_code_from +msgid "Account Code From" +msgstr "Código Cuenta Desde" + +#. module: account_financial_report +#: model:ir.model.fields,field_description:account_financial_report.field_aged_partner_balance_report_wizard__account_code_to +#: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__account_code_to +#: model:ir.model.fields,field_description:account_financial_report.field_open_items_report_wizard__account_code_to +#: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__account_code_to +msgid "Account Code To" +msgstr "Código Cuenta Hasta" + #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_account_group msgid "Account Group" -msgstr "Grupo de cuentas" +msgstr "Grupo de cuenta" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:44 #, python-format msgid "Account Name" msgstr "Cuenta" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:115 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters #, python-format msgid "Account at 0 filter" msgstr "Filtrar por Cuenta a 0" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:91 +#: code:addons/account_financial_report/report/open_items_xlsx.py:69 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters #, python-format @@ -138,7 +167,8 @@ msgid "" msgstr "≤ 120 d." #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:56 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:111 #, python-format msgid "Age ≤ 120 d." msgstr "Tiempo ≤ 120 d." @@ -151,7 +181,8 @@ msgid "" msgstr "≤ 30 d." #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:38 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:90 #, python-format msgid "Age ≤ 30 d." msgstr "Tiempo ≤ 30 d." @@ -164,7 +195,8 @@ msgid "" msgstr "≤ 60 d." #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:44 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:97 #, python-format msgid "Age ≤ 60 d." msgstr "Tiempo ≤ 60 d." @@ -177,13 +209,14 @@ msgid "" msgstr "≤ 90 d." #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:50 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:104 #, python-format msgid "Age ≤ 90 d." msgstr "Tiempo ≤ 90 d." #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:15 #: model:ir.actions.act_window,name:account_financial_report.action_aged_partner_balance_wizard #: model:ir.actions.client,name:account_financial_report.action_report_aged_partner_balance #: model:ir.actions.report,name:account_financial_report.action_print_report_aged_partner_balance_html @@ -200,15 +233,13 @@ msgstr "Balance Empresa Vencido" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_account_financial_report_aged_partner_balance -#, fuzzy -#| msgid "Aged Partner Balance -" msgid "Aged Partner Balance Report" -msgstr "Balance Empresa Vencido" +msgstr "Estado de antigüedad de saldos" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_aged_partner_balance_report_wizard msgid "Aged Partner Balance Wizard" -msgstr "Asistente Calidad de la deuda de las empresas" +msgstr "Asistente de Estado de Antigüedad de Saldos" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_a_f_r_report_aged_partner_balance_xlsx @@ -223,32 +254,32 @@ msgid "Aged Partner Balance XLSX" msgstr "Saldo vencidos de empresa XLSX" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:62 #, python-format msgid "All" msgstr "Todos" #. module: account_financial_report -#: model:ir.model.fields.selection,name:account_financial_report.selection__aged_partner_balance_report_wizard__target_move__all -#: model:ir.model.fields.selection,name:account_financial_report.selection__general_ledger_report_wizard__target_move__all -#: model:ir.model.fields.selection,name:account_financial_report.selection__open_items_report_wizard__target_move__all -#: model:ir.model.fields.selection,name:account_financial_report.selection__trial_balance_report_wizard__target_move__all +#: selection:aged.partner.balance.report.wizard,target_move:0 +#: selection:general.ledger.report.wizard,target_move:0 +#: selection:open.items.report.wizard,target_move:0 +#: selection:trial.balance.report.wizard,target_move:0 msgid "All Entries" msgstr "Todos los asientos" #. module: account_financial_report -#: model:ir.model.fields.selection,name:account_financial_report.selection__aged_partner_balance_report_wizard__target_move__posted -#: model:ir.model.fields.selection,name:account_financial_report.selection__general_ledger_report_wizard__target_move__posted -#: model:ir.model.fields.selection,name:account_financial_report.selection__open_items_report_wizard__target_move__posted -#: model:ir.model.fields.selection,name:account_financial_report.selection__trial_balance_report_wizard__target_move__posted +#: selection:aged.partner.balance.report.wizard,target_move:0 +#: selection:general.ledger.report.wizard,target_move:0 +#: selection:open.items.report.wizard,target_move:0 +#: selection:trial.balance.report.wizard,target_move:0 msgid "All Posted Entries" msgstr "Todos los asientos asentados" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:131 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:87 +#: code:addons/account_financial_report/report/open_items_xlsx.py:67 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:113 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters @@ -258,10 +289,10 @@ msgid "All entries" msgstr "Todos los asientos" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:131 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:87 +#: code:addons/account_financial_report/report/open_items_xlsx.py:67 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:113 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters @@ -276,13 +307,13 @@ msgid "Amount Cur." msgstr "Importe Inicial." #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:88 #, python-format msgid "Amount Currency" msgstr "Moneda de Total" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:67 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #, python-format msgid "Amount cur." @@ -301,19 +332,19 @@ msgid "Base Amount" msgstr "Basados en" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:125 #, python-format msgid "Base Balance" msgstr "Total Saldo" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:119 #, python-format msgid "Base Credit" msgstr "Haber" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:113 #, python-format msgid "Base Debit" msgstr "Total Debe" @@ -325,7 +356,7 @@ msgid "Based On" msgstr "Basados en" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:39 #, python-format msgid "Based on" msgstr "Basados en" @@ -341,7 +372,7 @@ msgid "Cancel" msgstr "Cancelar" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:95 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #, python-format msgid "Centralize filter" @@ -353,7 +384,7 @@ msgid "Centralized" msgstr "Centralizado" #. module: account_financial_report -#: model:ir.model.fields.selection,name:account_financial_report.selection__trial_balance_report_wizard__hierarchy_on__relation +#: selection:trial.balance.report.wizard,hierarchy_on:0 msgid "Child Accounts" msgstr "Cuentas Hijas" @@ -363,8 +394,8 @@ msgid "Child Groups" msgstr "Grupos Hijos" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:26 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:23 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_vat_report_base #, python-format @@ -372,7 +403,7 @@ msgid "Code" msgstr "Código" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:171 #: model:ir.model.fields,field_description:account_financial_report.field_aged_partner_balance_report_wizard__company_id #: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__company_id #: model:ir.model.fields,field_description:account_financial_report.field_journal_ledger_report_wizard__company_id @@ -389,7 +420,7 @@ msgid "Compute accounts" msgstr "Cuentas calculadas" #. module: account_financial_report -#: model:ir.model.fields.selection,name:account_financial_report.selection__trial_balance_report_wizard__hierarchy_on__computed +#: selection:trial.balance.report.wizard,hierarchy_on:0 msgid "Computed Accounts" msgstr "Cuentas Calculadas" @@ -401,8 +432,7 @@ msgid "" "\n" " Child Accounts: Use when your account groups are hierarchical.\n" "\n" -" No hierarchy: Use to display just the accounts, without any " -"grouping.\n" +" No hierarchy: Use to display just the accounts, without any grouping.\n" " " msgstr "" "Cuentas Calculadas: Usar cuando el grupo de cuentas tiene códigos \n" @@ -410,8 +440,7 @@ msgstr "" "\n" " Cuentas Hijas: Usar cuando los grupos de cuentas son jerárquicos.\n" "\n" -" Sin jerarquía: Usar para mostrar sólo las cuentas, sin ninguna " -"agrupación.\n" +" Sin jerarquía: Usar para mostrar sólo las cuentas, sin ninguna agrupación.\n" " " #. module: account_financial_report @@ -422,7 +451,7 @@ msgid "" msgstr "Centro de Costos" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:35 #, python-format msgid "Cost center" msgstr "Centro de Costos" @@ -445,12 +474,13 @@ msgstr "Creado por" #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__create_date #: model:ir.model.fields,field_description:account_financial_report.field_vat_report_wizard__create_date msgid "Created on" -msgstr "Creado en" +msgstr "Creado el" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:48 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:72 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:36 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:77 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_all_taxes #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header @@ -461,61 +491,63 @@ msgid "Credit" msgstr "Haber" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:54 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #, python-format msgid "Cumul. Bal." msgstr "Saldo Acumu." #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:63 +#: code:addons/account_financial_report/report/open_items_xlsx.py:43 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:51 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:92 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #, python-format msgid "Cur." msgstr "Actual." #. module: account_financial_report -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: code:addons/account_financial_report/report/open_items_xlsx.py:47 +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Cur. Original" msgstr "Acum. Inicial" #. module: account_financial_report -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: code:addons/account_financial_report/report/open_items_xlsx.py:53 +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Cur. Residual" msgstr "Acum. Residual" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:82 #, python-format msgid "Currency" msgstr "Moneda" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:32 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:83 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #, python-format msgid "Current" msgstr "Actual" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:70 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:26 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:31 +#: code:addons/account_financial_report/report/open_items_xlsx.py:24 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:71 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Date" msgstr "Fecha" @@ -542,8 +574,8 @@ msgid "Date To" msgstr "Fecha final" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:129 +#: code:addons/account_financial_report/report/open_items_xlsx.py:65 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters #, python-format @@ -551,7 +583,7 @@ msgid "Date at filter" msgstr "Filtro Fecha" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:37 #, python-format msgid "Date from" msgstr "Desde" @@ -565,9 +597,9 @@ msgid "Date range" msgstr "Periodo" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:82 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:175 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:110 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters #, python-format @@ -575,15 +607,16 @@ msgid "Date range filter" msgstr "Filtro periodo" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:38 #, python-format msgid "Date to" msgstr "Hasta" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:42 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:66 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:32 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:73 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_all_taxes #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header @@ -594,7 +627,7 @@ msgid "Debit" msgstr "Debe" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:108 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_all_taxes #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_taxes #, python-format @@ -628,20 +661,14 @@ msgstr "Detalle de impuestos" #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__display_name #: model:ir.model.fields,field_description:account_financial_report.field_vat_report_wizard__display_name msgid "Display Name" -msgstr "Nombre a mostrar" +msgstr "Nombre mostrado" #. module: account_financial_report #: model:ir.model.fields,help:account_financial_report.field_general_ledger_report_wizard__foreign_currency #: model:ir.model.fields,help:account_financial_report.field_open_items_report_wizard__foreign_currency #: model:ir.model.fields,help:account_financial_report.field_trial_balance_report_wizard__foreign_currency -msgid "" -"Display foreign currency for move lines, unless account currency is not " -"setup through chart of accounts will display initial and final balance in " -"that currency." -msgstr "" -"Mostrar moneda extranjera para líneas de movimiento contable, a menos que la " -"moneda de la cuenta no esté configurada a través del plan de cuentas " -"mostrará el saldo inicial y final en esa moneda." +msgid "Display foreign currency for move lines, unless account currency is not setup through chart of accounts will display initial and final balance in that currency." +msgstr "Mostrar moneda extranjera para líneas de movimiento contable, a menos que la moneda de la cuenta no esté configurada a través del plan de cuentas mostrará el saldo inicial y final en esa moneda." #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__hide_parent_hierarchy_level @@ -650,7 +677,6 @@ msgstr "No mostrar niveles padre" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines msgid "" "Due\n" " date" @@ -659,8 +685,17 @@ msgstr "" " vencimiento" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header +msgid "" +"Due\n" +" date" +msgstr "" +"Fecha\n" +" vencimiento" + +#. module: account_financial_report +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:76 +#: code:addons/account_financial_report/report/open_items_xlsx.py:30 #, python-format msgid "Due date" msgstr "Fecha vencimiento" @@ -685,9 +720,20 @@ msgstr "" " final" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: model:ir.model.fields,help:account_financial_report.field_aged_partner_balance_report_wizard__account_code_to +#: model:ir.model.fields,help:account_financial_report.field_general_ledger_report_wizard__account_code_to +#: model:ir.model.fields,help:account_financial_report.field_open_items_report_wizard__account_code_to +#: model:ir.model.fields,help:account_financial_report.field_trial_balance_report_wizard__account_code_to +msgid "Ending account in a range" +msgstr "Cuenta final en un rango" + +#. module: account_financial_report +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:295 +#: code:addons/account_financial_report/report/open_items_xlsx.py:171 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:44 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:59 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:85 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:100 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_ending_cumul #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #, python-format @@ -696,38 +742,34 @@ msgstr "Saldo final" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header -#, fuzzy -#| msgid "" -#| "Ending\n" -#| " balance" msgid "" "Ending balance\n" " cur." msgstr "" -"Saldo\n" -" final" +"Balance Final\n" +" moneda" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:183 #, python-format msgid "Entries sorted by" msgstr "Asientos ordenados por" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:71 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:27 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:26 +#: code:addons/account_financial_report/report/open_items_xlsx.py:25 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Entry" msgstr "Asiento" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:70 #, python-format msgid "Entry number" msgstr "Número de asiento" @@ -792,6 +834,14 @@ msgstr "Filtrar empresa" msgid "Foreign Currency" msgstr "Moneda Extranjera" +#. module: account_financial_report +#: model_terms:ir.ui.view,arch_db:account_financial_report.aged_partner_balance_wizard +#: model_terms:ir.ui.view,arch_db:account_financial_report.general_ledger_wizard +#: model_terms:ir.ui.view,arch_db:account_financial_report.open_items_wizard +#: model_terms:ir.ui.view,arch_db:account_financial_report.trial_balance_wizard +msgid "From Code" +msgstr "Desde Código" + #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters @@ -799,26 +849,22 @@ msgid "From:" msgstr "Desde:" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:83 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:176 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:111 #, python-format msgid "From: %s To: %s" msgstr "Desde: %s A: %s" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_account_group__complete_code -#, fuzzy -#| msgid "Code" msgid "Full Code" -msgstr "Código" +msgstr "Código Completo" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_account_group__complete_name -#, fuzzy -#| msgid "Name" msgid "Full Name" -msgstr "Nombre" +msgstr "Nombre completo" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__fy_start_date @@ -827,7 +873,7 @@ msgid "Fy Start Date" msgstr "Fecha Inicio" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:16 #: model:ir.actions.act_window,name:account_financial_report.act_action_general_ledger_wizard_partner_relation #: model:ir.actions.act_window,name:account_financial_report.action_general_ledger_wizard #: model:ir.actions.client,name:account_financial_report.action_report_general_ledger @@ -845,10 +891,8 @@ msgstr "Libro mayor" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_account_financial_report_general_ledger -#, fuzzy -#| msgid "General Ledger Report Wizard" msgid "General Ledger Report" -msgstr "Asistente de informe de Libro Mayor" +msgstr "Informe Libro Mayor" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_general_ledger_report_wizard @@ -869,12 +913,8 @@ msgstr "Libro mayor XLSX" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.general_ledger_wizard -msgid "" -"General Ledger can be computed only if selected company have only one " -"unaffected earnings account." -msgstr "" -"El Libro mayor solo se puede calcular si la empresa seleccionada tiene solo " -"una cuenta de resultados no afectados." +msgid "General Ledger can be computed only if selected company have only one unaffected earnings account." +msgstr "El Libro mayor solo se puede calcular si la empresa seleccionada tiene solo una cuenta de resultados no afectados." #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_journal_ledger_report_wizard__group_option @@ -882,9 +922,9 @@ msgid "Group entries by" msgstr "Agrupar por" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:92 +#: code:addons/account_financial_report/report/open_items_xlsx.py:70 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:116 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters @@ -939,53 +979,52 @@ msgstr "ID" #. module: account_financial_report #: model:ir.model.fields,help:account_financial_report.field_account_account__centralized -msgid "" -"If flagged, no details will be displayed in the General Ledger report (the " -"webkit one only), only centralized amounts per period." -msgstr "" -"Si se marca, no se mostrarán detalles en el informe del libro mayor (solo el " -"webkit), solo importes centralizados por período." +msgid "If flagged, no details will be displayed in the General Ledger report (the webkit one only), only centralized amounts per period." +msgstr "Si se marca, no se mostrarán detalles en el informe del libro mayor (solo el webkit), solo importes centralizados por período." #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header -#, fuzzy -#| msgid "" -#| "Initial\n" -#| " balance" msgid "" "Initial\n" " balance cur." msgstr "" -"Saldo\n" -" inicial" +"Balance\n" +" inicial moneda" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header +#, fuzzy +#| msgid "" +#| "Initial\n" +#| " balance" msgid "" "Initial\n" -" balance" +" balance cur." msgstr "" "Saldo\n" " inicial" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:283 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:28 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:55 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:69 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:96 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #, python-format msgid "Initial balance" msgstr "Saldo inicial" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:72 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:28 +#: code:addons/account_financial_report/report/open_items_xlsx.py:26 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:77 #: model:ir.actions.client,name:account_financial_report.action_report_journal_ledger #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__journal_ids #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Journal" msgstr "Diario" @@ -993,10 +1032,10 @@ msgstr "Diario" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_account_move_line msgid "Journal Item" -msgstr "Entrada de Diario" +msgstr "Apunte contable" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:15 #: model:ir.actions.act_window,name:account_financial_report.action_journal_ledger_wizard #: model:ir.actions.report,name:account_financial_report.action_print_journal_ledger_wizard_html #: model:ir.actions.report,name:account_financial_report.action_print_journal_ledger_wizard_qweb @@ -1012,10 +1051,8 @@ msgstr "Diario de contabilidad -" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_account_financial_report_journal_ledger -#, fuzzy -#| msgid "Journal Ledger Report Wizard" msgid "Journal Ledger Report" -msgstr "Asistente de informe de Libro Diario" +msgstr "Informe Diario de contabilidad" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_journal_ledger_report_wizard @@ -1028,14 +1065,7 @@ msgid "Journal Ledger XLSX" msgstr "Libro diario XLSX" #. module: account_financial_report -#: model:ir.model,name:account_financial_report.model_report_a_f_r_report_journal_ledger_xlsx -#, fuzzy -#| msgid "Journal Ledger XLSX" -msgid "Journal Ledger XLSX Report" -msgstr "Libro diario XLSX" - -#. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:187 #: model:ir.model.fields,field_description:account_financial_report.field_journal_ledger_report_wizard__journal_ids #: model_terms:ir.ui.view,arch_db:account_financial_report.journal_ledger_wizard #, python-format @@ -1074,7 +1104,7 @@ msgstr "Última modificación en" #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__write_uid #: model:ir.model.fields,field_description:account_financial_report.field_vat_report_wizard__write_uid msgid "Last Updated by" -msgstr "Última modificación por" +msgstr "Última actualización por" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_aged_partner_balance_report_wizard__write_date @@ -1084,7 +1114,7 @@ msgstr "Última modificación por" #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__write_date #: model:ir.model.fields,field_description:account_financial_report.field_vat_report_wizard__write_date msgid "Last Updated on" -msgstr "Última actualización en" +msgstr "Última actualización el" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_account_group__level @@ -1093,13 +1123,13 @@ msgid "Level" msgstr "Nivel" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:120 #, python-format msgid "Level %s" msgstr "Nivel %s" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:119 #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__limit_hierarchy_level #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters #, python-format @@ -1117,8 +1147,8 @@ msgid "Moves" msgstr "Asientos" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:103 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:24 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_all_taxes #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_taxes #: model_terms:ir.ui.view,arch_db:account_financial_report.report_vat_report_base @@ -1127,41 +1157,43 @@ msgid "Name" msgstr "Nombre" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:25 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_vat_report_base #, python-format msgid "Net" msgstr "Neto" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:96 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:100 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:104 +#: code:addons/account_financial_report/report/open_items_xlsx.py:72 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:118 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #, python-format msgid "No" msgstr "No" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:78 #, python-format msgid "No group" msgstr "Sin grupo" #. module: account_financial_report -#: model:ir.model.fields.selection,name:account_financial_report.selection__trial_balance_report_wizard__hierarchy_on__none +#: selection:trial.balance.report.wizard,hierarchy_on:0 msgid "No hierarchy" msgstr "Sin jerarquía" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:121 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters #, python-format msgid "No limit" msgstr "Sin límite" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:64 #, python-format msgid "Not Posted" msgstr "Sin Postear" @@ -1183,14 +1215,15 @@ msgid "OCA accounting reports" msgstr "Informes de contabilidad OCA" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:62 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:118 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #, python-format msgid "Older" msgstr "Mayor" #. module: account_financial_report -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/open_items_xlsx.py:14 #: model:ir.actions.act_window,name:account_financial_report.action_open_items_wizard #: model:ir.actions.client,name:account_financial_report.action_report_open_items #: model:ir.actions.report,name:account_financial_report.action_print_report_open_items_html @@ -1212,10 +1245,8 @@ msgstr "Extracto - Cliente" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_account_financial_report_open_items -#, fuzzy -#| msgid "Open Items Report Wizard" msgid "Open Items Report" -msgstr "Asistente de informe de partidas abiertas" +msgstr "Informe Partidas Abiertas" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_open_items_report_wizard @@ -1240,23 +1271,24 @@ msgid "Options" msgstr "Opciones" #. module: account_financial_report -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: code:addons/account_financial_report/report/open_items_xlsx.py:31 +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Original" msgstr "Inicial" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:26 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:74 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:33 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:51 +#: code:addons/account_financial_report/report/open_items_xlsx.py:28 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:68 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #, python-format msgid "Partner" @@ -1270,7 +1302,7 @@ msgid "" msgstr "Saldo Acumulado de Empresa" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:281 #, python-format msgid "Partner Initial balance" msgstr "Saldo Inicial de empresa" @@ -1282,8 +1314,8 @@ msgid "Partner cumul aged balance" msgstr "Saldo Acumulado de Empresa" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:292 +#: code:addons/account_financial_report/report/open_items_xlsx.py:166 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_ending_cumul #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_ending_cumul #, python-format @@ -1304,7 +1336,8 @@ msgid "Percents" msgstr "Porcentajes" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:40 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:81 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_lines_header #, python-format msgid "Period balance" @@ -1316,13 +1349,13 @@ msgid "Periods" msgstr "Periodos" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/journal_ledger_wizard.py:63 #, python-format msgid "Posted" msgstr "Posteado" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:41 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #, python-format msgid "Rec." @@ -1339,36 +1372,45 @@ msgstr "Sólo cuentas a cobrar" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines msgid "" "Ref -\n" " Label" msgstr "Referencia" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header +msgid "" +"Ref -\n" +" Label" +msgstr "" +"Ref -\n" +" Etiqueta" + +#. module: account_financial_report +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:75 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:34 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:56 +#: code:addons/account_financial_report/report/open_items_xlsx.py:29 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header #, python-format msgid "Ref - Label" -msgstr "Referencia" +msgstr "Ref - Etiqueta" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:27 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:77 +#: code:addons/account_financial_report/report/open_items_xlsx.py:35 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_lines_header #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_move_lines -#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_lines_header #, python-format msgid "Residual" msgstr "Remanente" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:92 +#: code:addons/account_financial_report/report/open_items_xlsx.py:70 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:116 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters @@ -1379,15 +1421,17 @@ msgstr "Mostrar" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_aged_partner_balance_report_wizard__show_move_line_details msgid "Show Move Line Details" -msgstr "Mostrar detalles de asientos" +msgstr "Mostrar Detalles Apuntes" #. module: account_financial_report +#: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__show_partner_details +#: model:ir.model.fields,field_description:account_financial_report.field_open_items_report_wizard__show_partner_details #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__show_partner_details msgid "Show Partner Details" msgstr "Mostrar detalles de empresa" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:99 #: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__show_analytic_tags #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #, python-format @@ -1395,9 +1439,9 @@ msgid "Show analytic tags" msgstr "Mostrar etiquetas analíticas" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:103 +#: code:addons/account_financial_report/report/open_items_xlsx.py:71 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:117 #: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__foreign_currency #: model:ir.model.fields,field_description:account_financial_report.field_open_items_report_wizard__foreign_currency #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__foreign_currency @@ -1421,7 +1465,15 @@ msgid "Start date" msgstr "Fecha de inicio" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 +#: model:ir.model.fields,help:account_financial_report.field_aged_partner_balance_report_wizard__account_code_from +#: model:ir.model.fields,help:account_financial_report.field_general_ledger_report_wizard__account_code_from +#: model:ir.model.fields,help:account_financial_report.field_open_items_report_wizard__account_code_from +#: model:ir.model.fields,help:account_financial_report.field_trial_balance_report_wizard__account_code_from +msgid "Starting account in a range" +msgstr "Cuenta inicial en un rango" + +#. module: account_financial_report +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:38 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #, python-format msgid "Tags" @@ -1436,11 +1488,11 @@ msgid "Target Moves" msgstr "Movimientos destino" #. module: account_financial_report -#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:0 -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/aged_partner_balance_xlsx.py:130 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:86 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:179 +#: code:addons/account_financial_report/report/open_items_xlsx.py:66 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:112 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_aged_partner_balance_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #: model_terms:ir.ui.view,arch_db:account_financial_report.report_open_items_filters @@ -1450,7 +1502,7 @@ msgid "Target moves filter" msgstr "Filtro movimientos destino" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 +#: code:addons/account_financial_report/report/vat_report_xlsx.py:29 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_vat_report_base #, python-format msgid "Tax" @@ -1463,40 +1515,40 @@ msgid "Tax Amount" msgstr "Total Impuestos" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:143 #, python-format msgid "Tax Balance" msgstr "Saldo de Impuestos" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:137 #, python-format msgid "Tax Credit" msgstr "Haber" #. module: account_financial_report -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:131 #, python-format msgid "Tax Debit" msgstr "Debe" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 -#: model:ir.model.fields.selection,name:account_financial_report.selection__vat_report_wizard__based_on__taxgroups +#: code:addons/account_financial_report/report/vat_report_xlsx.py:40 +#: selection:vat.report.wizard,based_on:0 #, python-format msgid "Tax Groups" msgstr "Grupo de impuestos" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 -#: model:ir.model.fields.selection,name:account_financial_report.selection__vat_report_wizard__based_on__taxtags +#: code:addons/account_financial_report/report/vat_report_xlsx.py:39 +#: selection:vat.report.wizard,based_on:0 #, python-format msgid "Tax Tags" msgstr "Etiquetas de impuestos" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:30 +#: code:addons/account_financial_report/report/journal_ledger_xlsx.py:61 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_lines #: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header #, python-format @@ -1504,46 +1556,33 @@ msgid "Taxes" msgstr "Impuestos" #. module: account_financial_report -#: code:addons/account_financial_report/wizard/general_ledger_wizard.py:0 +#: code:addons/account_financial_report/wizard/general_ledger_wizard.py:203 #, python-format -msgid "" -"The Company in the General Ledger Report Wizard and in Date Range must be " -"the same." -msgstr "" -"La empresa en el Asistente de informe de Contabilidad General y de rango de " -"fechas debe ser la misma." +msgid "The Company in the General Ledger Report Wizard and in Date Range must be the same." +msgstr "La empresa en el Asistente de informe de Contabilidad General y de rango de fechas debe ser la misma." #. module: account_financial_report -#: code:addons/account_financial_report/wizard/trial_balance_wizard.py:0 +#: code:addons/account_financial_report/wizard/trial_balance_wizard.py:181 #, python-format -msgid "" -"The Company in the Trial Balance Report Wizard and in Date Range must be the " -"same." -msgstr "" -"La empresa en el Asistente de informe de Balance de comprobación y en rango " -"de fechas debe ser la misma." +msgid "The Company in the Trial Balance Report Wizard and in Date Range must be the same." +msgstr "La empresa en el Asistente de informe de Balance de comprobación y en rango de fechas debe ser la misma." #. module: account_financial_report -#: code:addons/account_financial_report/wizard/vat_report_wizard.py:0 +#: code:addons/account_financial_report/wizard/vat_report_wizard.py:60 #, python-format -msgid "" -"The Company in the Vat Report Wizard and in Date Range must be the same." -msgstr "" -"La empresa en el Asistente para informes de IVA y en rango de fechas debe " -"ser la misma." +msgid "The Company in the Vat Report Wizard and in Date Range must be the same." +msgstr "La empresa en el Asistente para informes de IVA y en rango de fechas debe ser la misma." #. module: account_financial_report -#: code:addons/account_financial_report/wizard/trial_balance_wizard.py:0 +#: code:addons/account_financial_report/wizard/trial_balance_wizard.py:113 #, python-format msgid "The hierarchy level to filter on must be greater than 0." msgstr "El nivel de jerarquía a filtrar debe ser mayor que 0." #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_trial_balance_filters -#, fuzzy -#| msgid "To:" msgid "To" -msgstr "A:" +msgstr "A" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters @@ -1556,7 +1595,7 @@ msgid "Total" msgstr "Total" #. module: account_financial_report -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:15 #: model:ir.actions.act_window,name:account_financial_report.action_trial_balance_wizard #: model:ir.actions.client,name:account_financial_report.action_report_trial_balance #: model:ir.actions.report,name:account_financial_report.action_report_trial_balance_html @@ -1573,10 +1612,8 @@ msgstr "Balance de Sumas y Saldos -" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_report_account_financial_report_trial_balance -#, fuzzy -#| msgid "Trial Balance Report Wizard" msgid "Trial Balance Report" -msgstr "Asistente del informe de balance de sumas y saldos" +msgstr "Informe Balance de Sumas y Saldos" #. module: account_financial_report #: model:ir.model,name:account_financial_report.model_trial_balance_report_wizard @@ -1597,36 +1634,27 @@ msgstr "Balance de Sumas y Saldos XLSX" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.trial_balance_wizard -msgid "" -"Trial Balance can be computed only if selected company have only one " -"unaffected earnings account." -msgstr "" -"El balance de sumas y saldos solo puede calcularse si la compañía " -"seleccionada tiene una y solo una cuenta de ganancias." +msgid "Trial Balance can be computed only if selected company have only one unaffected earnings account." +msgstr "El balance de sumas y saldos solo puede calcularse si la compañía seleccionada tiene una y solo una cuenta de ganancias." #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_general_ledger_report_wizard__unaffected_earnings_account #: model:ir.model.fields,field_description:account_financial_report.field_trial_balance_report_wizard__unaffected_earnings_account msgid "Unaffected Earnings Account" -msgstr "Cuenta de ganancias no afectadas" +msgstr "Cuenta de Ganancias No Afectadas" #. module: account_financial_report #: model:ir.model.fields,help:account_financial_report.field_general_ledger_report_wizard__hide_account_at_0 #: model:ir.model.fields,help:account_financial_report.field_open_items_report_wizard__hide_account_at_0 -msgid "" -"Use this filter to hide an account or a partner with an ending balance at 0. " -"If partners are filtered, debits and credits totals will not match the trial " -"balance." -msgstr "" -"Use este filtro para ocultar las cuentas o empresas con saldo final 0. Si " -"las empresas se filtran, los debe y haber totales no coincidirán con el " -"balance de sumas y saldos." +msgid "Use this filter to hide an account or a partner with an ending balance at 0. If partners are filtered, debits and credits totals will not match the trial balance." +msgstr "Use este filtro para ocultar las cuentas o empresas con saldo final 0. Si las empresas se filtran, los debe y haber totales no coincidirán con el balance de sumas y saldos." #. module: account_financial_report #: model:ir.actions.act_window,name:account_financial_report.action_vat_report_wizard #: model:ir.actions.client,name:account_financial_report.action_report_vat_report #: model:ir.actions.report,name:account_financial_report.action_print_report_vat_report_html #: model:ir.actions.report,name:account_financial_report.action_print_report_vat_report_qweb +#: model:ir.model,name:account_financial_report.model_report_account_financial_report_vat_report #: model:ir.ui.menu,name:account_financial_report.menu_vat_report_wizard msgid "VAT Report" msgstr "Informe de impuestos" @@ -1652,25 +1680,10 @@ msgid "VAT Report XLSX" msgstr "Informe de impuestos XLSX" #. module: account_financial_report -#: code:addons/account_financial_report/report/vat_report_xlsx.py:0 -#, fuzzy, python-format -#| msgid "VAT Report" +#: code:addons/account_financial_report/report/vat_report_xlsx.py:13 +#, python-format msgid "Vat Report" -msgstr "Informe de impuestos" - -#. module: account_financial_report -#: model:ir.model,name:account_financial_report.model_report_account_financial_report_vat_report -#, fuzzy -#| msgid "VAT Report Options" -msgid "Vat Report Report" -msgstr "Opciones Informes de impuestos" - -#. module: account_financial_report -#: model:ir.model,name:account_financial_report.model_report_a_f_r_report_vat_report_xlsx -#, fuzzy -#| msgid "VAT Report XLSX" -msgid "Vat Report XLSX Report" -msgstr "Informe de impuestos XLSX" +msgstr "Informe de Impuestos" #. module: account_financial_report #: model_terms:ir.ui.view,arch_db:account_financial_report.aged_partner_balance_wizard @@ -1680,16 +1693,12 @@ msgstr "Informe de impuestos XLSX" #: model_terms:ir.ui.view,arch_db:account_financial_report.trial_balance_wizard #: model_terms:ir.ui.view,arch_db:account_financial_report.vat_report_wizard msgid "View" -msgstr "Vista" +msgstr "Ver" #. module: account_financial_report #: model:ir.model.fields,help:account_financial_report.field_trial_balance_report_wizard__hide_account_at_0 -msgid "" -"When this option is enabled, the trial balance will not display accounts " -"that have initial balance = debit = credit = end balance = 0" -msgstr "" -"Cuando habilite esta opción el balance de sumas y saldos no va a mostrar " -"cuentas que tengan saldo inicial = débito = crédito = saldo final = 0" +msgid "When this option is enabled, the trial balance will not display accounts that have initial balance = debit = credit = end balance = 0" +msgstr "Cuando habilite esta opción el balance de sumas y saldos no va a mostrar cuentas que tengan saldo inicial = débito = crédito = saldo final = 0" #. module: account_financial_report #: model:ir.model.fields,field_description:account_financial_report.field_journal_ledger_report_wizard__with_account_name @@ -1697,9 +1706,11 @@ msgid "With Account Name" msgstr "Cuenta con Nombre" #. module: account_financial_report -#: code:addons/account_financial_report/report/general_ledger_xlsx.py:0 -#: code:addons/account_financial_report/report/open_items_xlsx.py:0 -#: code:addons/account_financial_report/report/trial_balance_xlsx.py:0 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:96 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:100 +#: code:addons/account_financial_report/report/general_ledger_xlsx.py:104 +#: code:addons/account_financial_report/report/open_items_xlsx.py:72 +#: code:addons/account_financial_report/report/trial_balance_xlsx.py:118 #: model_terms:ir.ui.view,arch_db:account_financial_report.report_general_ledger_filters #, python-format msgid "Yes" @@ -1833,296 +1844,7 @@ msgstr "ancho: 8.11%;" #~ msgid "Filter Cost Center" #~ msgstr "Filtro Centro de Costos" -#~ msgid "Filter Journal" -#~ msgstr "Filtrar por Diario" - -#~ msgid "Filter Partner" -#~ msgstr "Filtro Empresa" - -#~ msgid "Final Amount Residual" -#~ msgstr "Saldo Residual Final" - -#~ msgid "Final Amount Residual Currency" -#~ msgstr "Saldo Residual Acumulado" - -#~ msgid "Final Amount Total Due" -#~ msgstr "Saldo Final" - -#~ msgid "Final Amount Total Due Currency" -#~ msgstr "Moneda de Saldo Final" - -#~ msgid "Final Balance" -#~ msgstr "Total Saldo" - -#~ msgid "Final Balance Foreign Currency" -#~ msgstr "Saldo Final Moneda Extranjera" - -#~ msgid "Final Credit" -#~ msgstr "Total Haber" - -#~ msgid "Final Debit" -#~ msgstr "Total Debe" - -#~ msgid "Group Option" -#~ msgstr "Opción de Agrupación" - -#~ msgid "Hide Account At 0" -#~ msgstr "Ocultar Cuentas a 0" - -#~ msgid "Hide Line" -#~ msgstr "Ocultar Línea" - -#~ msgid "Initial Balance" -#~ msgstr "Saldo Inicial" - -#~ msgid "Initial Balance Foreign Currency" -#~ msgstr "Saldo Inicial Moneda Extranjera" - -#~ msgid "Initial Credit" -#~ msgstr "Saldo inicial Haber" - -#~ msgid "Initial Debit" -#~ msgstr "Saldo inicial Debe" - -#~ msgid "Initial blance cur." -#~ msgstr "Saldo inicial Act." - -#~ msgid "Is Partner Account" -#~ msgstr "Es cuenta de Asociado" - -#~ msgid "Label" -#~ msgstr "Etiqueta" - -#~ msgid "Line" -#~ msgstr "Línea" - -#~ msgid "Matching Number" -#~ msgstr "Número Coincidente" - -#~ msgid "Move" -#~ msgstr "Asiento" - -#~ msgid "Move Line" -#~ msgstr "Línea de Asiento" - -#~ msgid "No partner allocated" -#~ msgstr "Empresa sin asignar" - -#~ msgid "Only Posted Moves" -#~ msgstr "Solo Asientos Posteados" - -#~ msgid "Parent" -#~ msgstr "Padre" - -#~ msgid "Partner ID" -#~ msgstr "Cliente" - -#~ msgid "Percent Age 120 Days" -#~ msgstr "Porcentaje a 120 días" - -#~ msgid "Percent Age 30 Days" -#~ msgstr "Porcentaje a 30 días" - -#~ msgid "Percent Age 60 Days" -#~ msgstr "Porcentaje a 60 días" - -#~ msgid "Percent Age 90 Days" -#~ msgstr "Porcentaje a 90 días" - -#~ msgid "Percent Current" -#~ msgstr "Porcentaje Actual" - -#~ msgid "Percent Older" -#~ msgstr "Porcentaje Anterior" - -#~ msgid "Period Balance" -#~ msgstr "Saldo de Periodo" - -#~ msgid "Report" -#~ msgstr "Informe" - -#~ msgid "Report Account" -#~ msgstr "Informe de cuenta" - -#~ msgid "Report Journal Ledger" -#~ msgstr "Libro diario" - -#~ msgid "Report Journal Ledger Tax Line" -#~ msgstr "Informe de Línea de Impuestos de libro Diario" - -#~ msgid "Report Move" -#~ msgstr "Informe de Asiento" - -#~ msgid "Report Move Line" -#~ msgstr "Informe de cuenta" - -#~ msgid "Report Partner" -#~ msgstr "Informe de empresa" - -#~ msgid "Report Tax" -#~ msgstr "Informe de impuestos" - -#~ msgid "Report Tax Line" -#~ msgstr "Informe de Línea de Impuestos" - -#~ msgid "Sequence" -#~ msgstr "Secuencia" - -#~ msgid "Show Analytic Tags" -#~ msgstr "Mostrar Etiquetas Analíticas" - -#~ msgid "Show Cost Center" -#~ msgstr "Mostrar centro de costos" - -#~ msgid "Sort Option" -#~ msgstr "Opción de Ordenar" - -#~ msgid "Tax Code" -#~ msgstr "Código de Impuesto" - -#~ msgid "Tax Detail" -#~ msgstr "Detalle de Impuesto" - -#~ msgid "Tax ID" -#~ msgstr "Impuesto" - -#~ msgid "Tax Name" -#~ msgstr "Nombre" - -#~ msgid "Taxes Description" -#~ msgstr "Descripción" - -#~ msgid "Taxgroup" -#~ msgstr "Grupo de impuestos" - -#~ msgid "Taxtag" -#~ msgstr "Etiqueta de impuesto" - -#~ msgid "Taxtags" -#~ msgstr "Etiquetas de impuestos" - -#~ msgid "report.a_f_r.report_aged_partner_balance_xlsx" -#~ msgstr "informe.a_f_r.reporte_vencidos_de_empresa_xlxs" - -#~ msgid "report.a_f_r.report_general_ledger_xlsx" -#~ msgstr "informe_a_f_r.libro_general_xlsx" - -#~ msgid "report.a_f_r.report_journal_ledger_xlsx" -#~ msgstr "informe_a_f_r.informe_libro_diario_xlsx" - -#~ msgid "report.a_f_r.report_open_items_xlsx" -#~ msgstr "informe.a_f_r.informe_abiertos_xlsx" - -#~ msgid "report.a_f_r.report_trial_balance_xlsx" -#~ msgstr "informe.a_f_r.informe_balance_sumas_y_saldos_xlsx" - -#~ msgid "report.a_f_r.report_vat_report_xlsx" -#~ msgstr "informe.a_f_r.informe_impuestos_xlsx" - -#~ msgid "report.account_financial_report.abstract_report_xlsx" -#~ msgstr "informe.informes_de_contabilidad.informe_abstracto_xlsx" - -#~ msgid "report_aged_partner_balance" -#~ msgstr "informe_saldos_vencidos_empresa" - -#~ msgid "report_aged_partner_balance_account" -#~ msgstr "informe_saldos_vencidos_empresa" - -#~ msgid "report_aged_partner_balance_line" -#~ msgstr "informe_linea_saldos_vencidos_empresa" - -#~ msgid "report_aged_partner_balance_move_line" -#~ msgstr "informe_linea_de_asiento_saldos_vencidos_empresa" - -#~ msgid "report_aged_partner_balance_partner" -#~ msgstr "informe_saldo_vencido_empresa" - -#~ msgid "report_general_ledger" -#~ msgstr "informe_libro_mayor" - -#~ msgid "report_general_ledger_account" -#~ msgstr "informe_cuenta_libro_mayor" - -#~ msgid "report_general_ledger_move_line" -#~ msgstr "informe_linea_asiento_libro_mayor" - -#~ msgid "report_general_ledger_partner" -#~ msgstr "informe_libro_mayor_empresa" - -#~ msgid "report_journal_ledger" -#~ msgstr "informe_libro_diario" - -#~ msgid "report_journal_ledger_journal" -#~ msgstr "informe_diario_libro_diario" - -#~ msgid "report_journal_ledger_journal_tax_line" -#~ msgstr "informe_linea_impuesto_libro_diario" - -#~ msgid "report_journal_ledger_move" -#~ msgstr "informe_asiento_libro_diario" - -#~ msgid "report_journal_ledger_move_line" -#~ msgstr "informe_linea_asiento_libro_diario" - -#~ msgid "report_journal_ledger_report_tax_line" -#~ msgstr "informe_linea_impuesto_libro_diario" - -#~ msgid "report_open_items" -#~ msgstr "informe_items_abiertos" - -#~ msgid "report_open_items_account" -#~ msgstr "informe_cuenta_elementos_abiertos" - -#~ msgid "report_open_items_move_line" -#~ msgstr "informe_linea_asiento_elementos_abiertos" - -#~ msgid "report_open_items_partner" -#~ msgstr "informe_elementos_abiertos_empresa" - -#~ msgid "report_trial_balance" -#~ msgstr "informe_balance_de_sumas_y_saldos" - -#~ msgid "report_trial_balance_account" -#~ msgstr "informe_cuenta_balance_sumas_y_saldos" - -#~ msgid "report_trial_balance_partner" -#~ msgstr "informe_balance_sumas_y_saldos_empresa" - -#~ msgid "report_vat_report" -#~ msgstr "informe_informe_impuestos" - -#~ msgid "report_vat_report_tax" -#~ msgstr "informe_informe_impuestos" - -#~ msgid "report_vat_report_taxtag" -#~ msgstr "informe_etiquetas_de_impuesto" - -#~ msgid "account.group" -#~ msgstr "cuenta.grupo" - -#~ msgid "account_financial_report_abstract" -#~ msgstr "'account_financial_report_abstract'" - -#~ msgid "vat.report.wizard" -#~ msgstr "asistente.reporte.impuestos" - -#~ msgid "Aged Partner Balance - %s - %s" -#~ msgstr "Balance vencido empresa - %s - %s" - -#~ msgid "General Ledger - %s - %s" -#~ msgstr "Libro mayor - %s - %s" - -#~ msgid "Journal Ledger - %s - %s" -#~ msgstr "Libro diario - %s - %s" - -#~ msgid "Open Items - %s - %s" -#~ msgstr "Partidas abiertas - %s - %s" - -#~ msgid "Trial Balance - %s - %s" -#~ msgstr "Balance de Sumas y Saldos - %s - %s" - -#~ msgid "VAT Report - %s - %s" -#~ msgstr "Informe de impuestos - %s - %s" - -#~ msgid "Hide Account Balance At 0" -#~ msgstr "Ocultar saldos con valor a 0" +#. module: account_financial_report +#: model_terms:ir.ui.view,arch_db:account_financial_report.report_journal_ledger_journal_table_header +msgid "width: 8.11%;" +msgstr "ancho: 8.11%;" diff --git a/account_financial_report/report/abstract_report_xlsx.py b/account_financial_report/report/abstract_report_xlsx.py index ce972dde..64fc5d15 100644 --- a/account_financial_report/report/abstract_report_xlsx.py +++ b/account_financial_report/report/abstract_report_xlsx.py @@ -440,25 +440,29 @@ class AbstractReportXslx(models.AbstractModel): self.sheet.write_string( self.row_pos, col_pos, value or "", self.format_header_right ) + elif cell_type == "currency_name": + self.sheet.write_string( + self.row_pos, col_pos, value or "", self.format_header_right + ) self.row_pos += 1 def _get_currency_amt_format(self, line_object): """ Return amount format specific for each currency. """ - if hasattr(line_object, "account_group_id") and line_object.account_group_id: - format_amt = self.format_amount_bold + if "account_group_id" in line_object and line_object["account_group_id"]: + format_amt = getattr(self, "format_amount_bold") field_prefix = "format_amount_bold" else: - format_amt = self.format_amount + format_amt = getattr(self, "format_amount") field_prefix = "format_amount" - if line_object.currency_id: - field_name = "{}_{}".format(field_prefix, line_object.currency_id.name) + if "currency_id" in line_object and line_object.get("currency_id", False): + field_name = "{}_{}".format(field_prefix, line_object["currency_id"].name) if hasattr(self, field_name): format_amt = getattr(self, field_name) else: format_amt = self.workbook.add_format() - self.field_name = format_amt + setattr(self, "field_name", format_amt) format_amount = "#,##0." + ( - "0" * line_object.currency_id.decimal_places + "0" * line_object["currency_id"].decimal_places ) format_amt.set_num_format(format_amount) return format_amt @@ -469,10 +473,13 @@ class AbstractReportXslx(models.AbstractModel): format_amt = self.format_amount_bold field_prefix = "format_amount_bold" else: - format_amt = self.format_amount + format_amt = getattr(self, "format_amount") field_prefix = "format_amount" if line_dict.get("currency_id", False) and line_dict["currency_id"]: - currency = self.env["res.currency"].browse([line_dict["currency_id"]]) + if isinstance(line_dict["currency_id"], int): + currency = self.env["res.currency"].browse(line_dict["currency_id"]) + else: + currency = line_dict["currency_id"] field_name = "{}_{}".format(field_prefix, currency.name) if hasattr(self, field_name): format_amt = getattr(self, field_name) diff --git a/account_financial_report/report/aged_partner_balance.py b/account_financial_report/report/aged_partner_balance.py index e67d25ee..d24ef85b 100644 --- a/account_financial_report/report/aged_partner_balance.py +++ b/account_financial_report/report/aged_partner_balance.py @@ -2,6 +2,7 @@ # Copyright 2020 ForgeFlow S.L. (https://www.forgeflow.com) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +import operator from datetime import date, datetime, timedelta from odoo import api, models @@ -63,7 +64,7 @@ class AgedPartnerBalanceReport(models.AbstractModel): @api.model def _get_move_lines_domain( - self, company_id, account_ids, partner_ids, only_posted_moves + self, company_id, account_ids, partner_ids, only_posted_moves, date_from ): domain = [ ("account_id", "in", account_ids), @@ -74,6 +75,8 @@ class AgedPartnerBalanceReport(models.AbstractModel): domain += [("partner_id", "in", partner_ids)] if only_posted_moves: domain += [("move_id.state", "=", "posted")] + if date_from: + domain += [("date", ">", date_from)] return domain @api.model @@ -104,7 +107,7 @@ class AgedPartnerBalanceReport(models.AbstractModel): return ag_pb_data def _get_account_partial_reconciled(self, company_id, date_at_object): - domain = [("max_date", ">=", date_at_object), ("company_id", "=", company_id)] + domain = [("max_date", ">", date_at_object), ("company_id", "=", company_id)] fields = ["debit_move_id", "credit_move_id", "amount"] accounts_partial_reconcile = self.env["account.partial.reconcile"].search_read( domain=domain, fields=fields @@ -153,11 +156,14 @@ class AgedPartnerBalanceReport(models.AbstractModel): partner_ids, only_posted_moves, ): - reconciled_ids = list(debit_ids) + list(credit_ids) - new_ml_ids = [] - for reconciled_id in reconciled_ids: - if reconciled_id not in ml_ids and reconciled_id not in new_ml_ids: - new_ml_ids += [reconciled_id] + debit_ids = set(debit_ids) + credit_ids = set(credit_ids) + in_credit_but_not_in_debit = credit_ids - debit_ids + reconciled_ids = list(debit_ids) + list(in_credit_but_not_in_debit) + reconciled_ids = set(reconciled_ids) + ml_ids = set(ml_ids) + new_ml_ids = reconciled_ids - ml_ids + new_ml_ids = list(new_ml_ids) new_domain = self._get_new_move_lines_domain( new_ml_ids, account_ids, company_id, partner_ids, only_posted_moves ) @@ -192,11 +198,12 @@ class AgedPartnerBalanceReport(models.AbstractModel): account_ids, partner_ids, date_at_object, + date_from, only_posted_moves, show_move_line_details, ): domain = self._get_move_lines_domain( - company_id, account_ids, partner_ids, only_posted_moves + company_id, account_ids, partner_ids, only_posted_moves, date_from ) ml_fields = [ "id", @@ -225,9 +232,13 @@ class AgedPartnerBalanceReport(models.AbstractModel): credit_amount, ) = self._get_account_partial_reconciled(company_id, date_at_object) if acc_partial_rec: - ml_ids = map(lambda r: r["id"], move_lines) - debit_ids = map(lambda r: r["debit_move_id"], acc_partial_rec) - credit_ids = map(lambda r: r["credit_move_id"], acc_partial_rec) + ml_ids = list(map(operator.itemgetter("id"), move_lines)) + debit_ids = list( + map(operator.itemgetter("debit_move_id"), acc_partial_rec) + ) + credit_ids = list( + map(operator.itemgetter("credit_move_id"), acc_partial_rec) + ) move_lines = self._recalculate_move_lines( move_lines, debit_ids, @@ -240,15 +251,12 @@ class AgedPartnerBalanceReport(models.AbstractModel): partner_ids, only_posted_moves, ) - moves_lines_to_remove = [] - for move_line in move_lines: - if move_line["date"] > date_at_object or float_is_zero( - move_line["amount_residual"], precision_digits=2 - ): - moves_lines_to_remove.append(move_line) - if len(moves_lines_to_remove) > 0: - for move_line_to_remove in moves_lines_to_remove: - move_lines.remove(move_line_to_remove) + move_lines = [ + move_line + for move_line in move_lines + if move_line["date"] <= date_at_object + and not float_is_zero(move_line["amount_residual"], precision_digits=2) + ] for move_line in move_lines: journals_ids.add(move_line["journal_id"][0]) acc_id = move_line["account_id"][0] @@ -267,6 +275,17 @@ class AgedPartnerBalanceReport(models.AbstractModel): ag_pb_data = self._initialize_partner(ag_pb_data, acc_id, prt_id) move_line_data = {} if show_move_line_details: + if move_line["ref"] == move_line["name"]: + if move_line["ref"]: + ref_label = move_line["ref"] + else: + ref_label = "" + elif not move_line["ref"]: + ref_label = move_line["name"] + elif not move_line["name"]: + ref_label = move_line["ref"] + else: + ref_label = move_line["ref"] + str(" - ") + move_line["name"] move_line_data.update( { "date": move_line["date"], @@ -274,7 +293,7 @@ class AgedPartnerBalanceReport(models.AbstractModel): "jnl_id": move_line["journal_id"][0], "acc_id": acc_id, "partner": prt_name, - "ref": move_line["ref"], + "ref_label": ref_label, "due_date": move_line["date_maturity"], "residual": move_line["amount_residual"], } @@ -420,7 +439,7 @@ class AgedPartnerBalanceReport(models.AbstractModel): partner_ids = data["partner_ids"] date_at = data["date_at"] date_at_object = datetime.strptime(date_at, "%Y-%m-%d").date() - + date_from = data["date_from"] only_posted_moves = data["only_posted_moves"] show_move_line_details = data["show_move_line_details"] ( @@ -433,6 +452,7 @@ class AgedPartnerBalanceReport(models.AbstractModel): account_ids, partner_ids, date_at_object, + date_from, only_posted_moves, show_move_line_details, ) diff --git a/account_financial_report/report/aged_partner_balance_xlsx.py b/account_financial_report/report/aged_partner_balance_xlsx.py index ea2c1084..aea918a9 100644 --- a/account_financial_report/report/aged_partner_balance_xlsx.py +++ b/account_financial_report/report/aged_partner_balance_xlsx.py @@ -85,7 +85,7 @@ class AgedPartnerBalanceXslx(models.AbstractModel): 2: {"header": _("Journal"), "field": "journal", "width": 8}, 3: {"header": _("Account"), "field": "account", "width": 9}, 4: {"header": _("Partner"), "field": "partner", "width": 25}, - 5: {"header": _("Ref - Label"), "field": "ref", "width": 40}, + 5: {"header": _("Ref - Label"), "field": "ref_label", "width": 40}, 6: {"header": _("Due date"), "field": "due_date", "width": 11}, 7: { "header": _("Residual"), diff --git a/account_financial_report/report/general_ledger.py b/account_financial_report/report/general_ledger.py index f5b38a62..9ebaae34 100644 --- a/account_financial_report/report/general_ledger.py +++ b/account_financial_report/report/general_ledger.py @@ -4,6 +4,7 @@ import calendar import datetime +import operator from odoo import api, models @@ -55,6 +56,7 @@ class GeneralLedgerReport(models.AbstractModel): "id": tax.id, "amount": tax.amount, "amount_type": tax.amount_type, + "display_name": tax.display_name, } } ) @@ -62,6 +64,13 @@ class GeneralLedgerReport(models.AbstractModel): taxes_data[tax.id]["string"] = "%" else: taxes_data[tax.id]["string"] = "" + taxes_data[tax.id]["tax_name"] = ( + tax.display_name + + " (" + + str(tax.amount) + + taxes_data[tax.id]["string"] + + ")" + ) return taxes_data def _get_acc_prt_accounts_ids(self, company_id): @@ -301,6 +310,7 @@ class GeneralLedgerReport(models.AbstractModel): if move_line["partner_id"] else "", "ref": "" if not move_line["ref"] else move_line["ref"], + "name": "" if not move_line["name"] else move_line["name"], "tax_ids": move_line["tax_ids"], "debit": move_line["debit"], "credit": move_line["credit"], @@ -315,6 +325,16 @@ class GeneralLedgerReport(models.AbstractModel): "tag_ids": move_line["analytic_tag_ids"], "currency_id": move_line["currency_id"], } + if ( + move_line_data["ref"] == move_line_data["name"] + or move_line_data["ref"] == "" + ): + ref_label = move_line_data["name"] + elif move_line_data["name"] == "": + ref_label = move_line_data["ref"] + else: + ref_label = move_line_data["ref"] + str(" - ") + move_line_data["name"] + move_line_data.update({"ref_label": ref_label}) return move_line_data @api.model @@ -383,6 +403,22 @@ class GeneralLedgerReport(models.AbstractModel): gen_ld_data[acc_id]["fin_bal"]["bal_curr"] = 0.0 return gen_ld_data + def _get_reconciled_after_date_to_ids(self, full_reconcile_ids, date_to): + full_reconcile_ids = list(full_reconcile_ids) + domain = [ + ("max_date", ">", date_to), + ("full_reconcile_id", "in", full_reconcile_ids), + ] + fields = ["full_reconcile_id"] + reconciled_after_date_to = self.env["account.partial.reconcile"].search_read( + domain=domain, fields=fields + ) + rec_after_date_to_ids = list( + map(operator.itemgetter("full_reconcile_id"), reconciled_after_date_to) + ) + rec_after_date_to_ids = [i[0] for i in rec_after_date_to_ids] + return rec_after_date_to_ids + def _get_period_ml_data( self, account_ids, @@ -427,6 +463,7 @@ class GeneralLedgerReport(models.AbstractModel): "analytic_tag_ids", "amount_currency", "ref", + "name", ] move_lines = self.env["account.move.line"].search_read( domain=domain, fields=ml_fields @@ -497,6 +534,9 @@ class GeneralLedgerReport(models.AbstractModel): accounts_data = self._get_accounts_data(gen_ld_data.keys()) taxes_data = self._get_taxes_data(list(taxes_ids)) tags_data = self._get_tags_data(list(tags_ids)) + rec_after_date_to_ids = self._get_reconciled_after_date_to_ids( + full_reconcile_data.keys(), date_to + ) return ( gen_ld_data, accounts_data, @@ -505,17 +545,24 @@ class GeneralLedgerReport(models.AbstractModel): full_reconcile_data, taxes_data, tags_data, + rec_after_date_to_ids, ) @api.model - def _recalculate_cumul_balance(self, move_lines, last_cumul_balance): + def _recalculate_cumul_balance( + self, move_lines, last_cumul_balance, rec_after_date_to_ids + ): for move_line in move_lines: move_line["balance"] += last_cumul_balance last_cumul_balance = move_line["balance"] + if move_line["rec_id"] in rec_after_date_to_ids: + move_line["rec_name"] = str("*") + move_line["rec_name"] return move_lines @api.model - def _create_general_ledger(self, gen_led_data, accounts_data): + def _create_general_ledger( + self, gen_led_data, accounts_data, show_partner_details, rec_after_date_to_ids + ): general_ledger = [] for acc_id in gen_led_data.keys(): account = {} @@ -537,32 +584,52 @@ class GeneralLedgerReport(models.AbstractModel): move_lines += [gen_led_data[acc_id][ml_id]] move_lines = sorted(move_lines, key=lambda k: (k["date"])) move_lines = self._recalculate_cumul_balance( - move_lines, gen_led_data[acc_id]["init_bal"]["balance"] + move_lines, + gen_led_data[acc_id]["init_bal"]["balance"], + rec_after_date_to_ids, ) account.update({"move_lines": move_lines}) else: - list_partner = [] - for prt_id in gen_led_data[acc_id].keys(): - partner = {} + if show_partner_details: + list_partner = [] + for prt_id in gen_led_data[acc_id].keys(): + partner = {} + move_lines = [] + if not isinstance(prt_id, int): + account.update({prt_id: gen_led_data[acc_id][prt_id]}) + else: + for ml_id in gen_led_data[acc_id][prt_id].keys(): + if not isinstance(ml_id, int): + partner.update( + {ml_id: gen_led_data[acc_id][prt_id][ml_id]} + ) + else: + move_lines += [gen_led_data[acc_id][prt_id][ml_id]] + move_lines = sorted(move_lines, key=lambda k: (k["date"])) + move_lines = self._recalculate_cumul_balance( + move_lines, + gen_led_data[acc_id][prt_id]["init_bal"]["balance"], + rec_after_date_to_ids, + ) + partner.update({"move_lines": move_lines}) + list_partner += [partner] + account.update({"list_partner": list_partner}) + else: move_lines = [] - if not isinstance(prt_id, int): - account.update({prt_id: gen_led_data[acc_id][prt_id]}) - else: - for ml_id in gen_led_data[acc_id][prt_id].keys(): - if not isinstance(ml_id, int): - partner.update( - {ml_id: gen_led_data[acc_id][prt_id][ml_id]} - ) - else: - move_lines += [gen_led_data[acc_id][prt_id][ml_id]] - move_lines = sorted(move_lines, key=lambda k: (k["date"])) - move_lines = self._recalculate_cumul_balance( - move_lines, - gen_led_data[acc_id][prt_id]["init_bal"]["balance"], - ) - partner.update({"move_lines": move_lines}) - list_partner += [partner] - account.update({"list_partner": list_partner}) + for prt_id in gen_led_data[acc_id].keys(): + if not isinstance(prt_id, int): + account.update({prt_id: gen_led_data[acc_id][prt_id]}) + else: + for ml_id in gen_led_data[acc_id][prt_id].keys(): + if isinstance(ml_id, int): + move_lines += [gen_led_data[acc_id][prt_id][ml_id]] + move_lines = sorted(move_lines, key=lambda k: (k["date"])) + move_lines = self._recalculate_cumul_balance( + move_lines, + gen_led_data[acc_id]["init_bal"]["balance"], + rec_after_date_to_ids, + ) + account.update({"move_lines": move_lines, "partners": False}) general_ledger += [account] return general_ledger @@ -581,7 +648,7 @@ class GeneralLedgerReport(models.AbstractModel): centralized_ml[jnl_id][month].update( { "journal_id": jnl_id, - "ref": "Centralized entries", + "ref_label": "Centralized entries", "date": date, "debit": 0.0, "credit": 0.0, @@ -640,6 +707,7 @@ class GeneralLedgerReport(models.AbstractModel): account_ids = data["account_ids"] analytic_tag_ids = data["analytic_tag_ids"] cost_center_ids = data["cost_center_ids"] + show_partner_details = data["show_partner_details"] hide_account_at_0 = data["hide_account_at_0"] foreign_currency = data["foreign_currency"] only_posted_moves = data["only_posted_moves"] @@ -667,6 +735,7 @@ class GeneralLedgerReport(models.AbstractModel): full_reconcile_data, taxes_data, tags_data, + rec_after_date_to_ids, ) = self._get_period_ml_data( account_ids, partner_ids, @@ -683,7 +752,9 @@ class GeneralLedgerReport(models.AbstractModel): analytic_tag_ids, cost_center_ids, ) - general_ledger = self._create_general_ledger(gen_ld_data, accounts_data) + general_ledger = self._create_general_ledger( + gen_ld_data, accounts_data, show_partner_details, rec_after_date_to_ids + ) if centralize: for account in general_ledger: if account["centralized"]: diff --git a/account_financial_report/report/general_ledger_xlsx.py b/account_financial_report/report/general_ledger_xlsx.py index ff2da940..d4deffd6 100644 --- a/account_financial_report/report/general_ledger_xlsx.py +++ b/account_financial_report/report/general_ledger_xlsx.py @@ -28,7 +28,7 @@ class GeneralLedgerXslx(models.AbstractModel): 3: {"header": _("Account"), "field": "account", "width": 9}, 4: {"header": _("Taxes"), "field": "taxes_description", "width": 15}, 5: {"header": _("Partner"), "field": "partner_name", "width": 25}, - 6: {"header": _("Ref - Label"), "field": "ref", "width": 40}, + 6: {"header": _("Ref - Label"), "field": "ref_label", "width": 40}, 7: {"header": _("Cost center"), "field": "cost_center", "width": 15}, 8: {"header": _("Tags"), "field": "tags", "width": 10}, 9: {"header": _("Rec."), "field": "rec_name", "width": 5}, @@ -173,20 +173,15 @@ class GeneralLedgerXslx(models.AbstractModel): "currency_id": line["currency_id"][0], } ) - if line["ref"] != "Centralized entries": + if line["ref_label"] != "Centralized entries": taxes_description = "" tags = "" for tax_id in line["tax_ids"]: - taxes_description += ( - str(taxes_data[tax_id]["amount"]) - + " " - + taxes_data[tax_id]["string"] - + " " - ) + taxes_description += taxes_data[tax_id]["tax_name"] + " " for tag_id in line["tag_ids"]: tags += tags_data[tag_id]["name"] + " " line.update( - {"taxes_description": taxes_description, "tags": tags} + {"taxes_description": taxes_description, "tags": tags,} ) self.write_line_from_dict(line) # Display ending balance line for account @@ -225,7 +220,7 @@ class GeneralLedgerXslx(models.AbstractModel): ) if foreign_currency: partner.update( - {"initial_bal_culrr": partner["init_bal"]["bal_curr"]} + {"initial_bal_curr": partner["init_bal"]["bal_curr"],} ) self.write_initial_balance_from_dict(partner) @@ -237,20 +232,24 @@ class GeneralLedgerXslx(models.AbstractModel): "journal": journals_data[line["journal_id"]]["code"], } ) - if line["ref"] != "Centralized entries": + if line["currency_id"]: + line.update( + { + "currency_name": line["currency_id"][1], + "currency_id": line["currency_id"][0], + } + ) + if line["ref_label"] != "Centralized entries": taxes_description = "" tags = "" for tax_id in line["tax_ids"]: taxes_description += ( - str(taxes_data[tax_id]["amount"]) - + " " - + taxes_data[tax_id]["string"] - + " " + taxes_data[tax_id]["tax_name"] + " " ) for tag_id in line["tag_ids"]: tags += tags_data[tag_id]["name"] + " " line.update( - {"taxes_description": taxes_description, "tags": tags} + {"taxes_description": taxes_description, "tags": tags,} ) self.write_line_from_dict(line) @@ -262,9 +261,13 @@ class GeneralLedgerXslx(models.AbstractModel): "final_balance": partner["fin_bal"]["balance"], } ) - if foreign_currency: + if foreign_currency and partner["currency_id"]: partner.update( - {"final_bal_curr": partner["fin_bal"]["bal_curr"]} + { + "final_bal_curr": partner["fin_bal"]["bal_curr"], + "currency_name": partner["currency_id"].name, + "currency_id": partner["currency_id"].id, + } ) self.write_ending_balance_from_dict(partner) @@ -279,9 +282,13 @@ class GeneralLedgerXslx(models.AbstractModel): "final_balance": account["fin_bal"]["balance"], } ) - if foreign_currency: + if foreign_currency and account["currency_id"]: account.update( - {"final_bal_curr": account["fin_bal"]["bal_curr"],} + { + "final_bal_curr": account["fin_bal"]["bal_curr"], + "currency_name": account["currency_id"].name, + "currency_id": account["currency_id"].id, + } ) self.write_ending_balance_from_dict(account) diff --git a/account_financial_report/report/open_items.py b/account_financial_report/report/open_items.py index 544cc3e1..9b7e87a9 100644 --- a/account_financial_report/report/open_items.py +++ b/account_financial_report/report/open_items.py @@ -6,7 +6,6 @@ import operator from datetime import date, datetime from odoo import api, models -from odoo.osv import expression from odoo.tools import float_is_zero @@ -31,137 +30,113 @@ class OpenItemsReport(models.AbstractModel): ).render(rcontext) return result - def _get_account_partial_reconciled(self, move_lines_data, date_at_object): - reconciled_ids = [] - for move_line in move_lines_data: - if move_line["reconciled"]: - reconciled_ids += [move_line["id"]] - domain = [("max_date", ">=", date_at_object)] - domain += expression.OR( - [ - [("debit_move_id", "in", reconciled_ids)], - [("credit_move_id", "in", reconciled_ids)], - ] - ) + def _get_account_partial_reconciled(self, company_id, date_at_object): + domain = [("max_date", ">", date_at_object), ("company_id", "=", company_id)] fields = ["debit_move_id", "credit_move_id", "amount"] accounts_partial_reconcile = self.env["account.partial.reconcile"].search_read( domain=domain, fields=fields ) - debit_accounts_partial_amount = {} - credit_accounts_partial_amount = {} + debit_amount = {} + credit_amount = {} for account_partial_reconcile_data in accounts_partial_reconcile: debit_move_id = account_partial_reconcile_data["debit_move_id"][0] credit_move_id = account_partial_reconcile_data["credit_move_id"][0] - if debit_move_id not in debit_accounts_partial_amount.keys(): - debit_accounts_partial_amount[debit_move_id] = 0.0 - debit_accounts_partial_amount[ - debit_move_id - ] += account_partial_reconcile_data["amount"] - if credit_move_id not in credit_accounts_partial_amount.keys(): - credit_accounts_partial_amount[credit_move_id] = 0.0 - credit_accounts_partial_amount[ - credit_move_id - ] += account_partial_reconcile_data["amount"] + if debit_move_id not in debit_amount.keys(): + debit_amount[debit_move_id] = 0.0 + debit_amount[debit_move_id] += account_partial_reconcile_data["amount"] + if credit_move_id not in credit_amount.keys(): + credit_amount[credit_move_id] = 0.0 + credit_amount[credit_move_id] += account_partial_reconcile_data["amount"] account_partial_reconcile_data.update( {"debit_move_id": debit_move_id, "credit_move_id": credit_move_id} ) - return ( - accounts_partial_reconcile, - debit_accounts_partial_amount, - credit_accounts_partial_amount, - ) + return accounts_partial_reconcile, debit_amount, credit_amount @api.model - def _get_query_domain( - self, - account_ids, - partner_ids, - date_at_object, - target_move, - company_id, - date_from, + def _get_new_move_lines_domain( + self, new_ml_ids, account_ids, company_id, partner_ids, target_moves ): - query = """ - WHERE aml.account_id in %s and aml.company_id = %s - """ % ( - tuple(account_ids) if len(account_ids) > 1 else "(%s)" % account_ids[0], - company_id, - ) - if date_from: - query += " and aml.date >= '%s'" % date_from + domain = [ + ("account_id", "in", account_ids), + ("company_id", "=", company_id), + ("id", "in", new_ml_ids), + ] if partner_ids: - query += " and aml.partner_id in {}".format(tuple(partner_ids)) - if target_move == "posted": - query += " and am.state = 'posted'" - if date_at_object >= date.today(): - query += " and aml.reconciled IS FALSE" - else: - query += ( - """ and ((aml.reconciled IS FALSE OR aml.date >= '%s') - OR aml.full_reconcile_id IS NOT NULL)""" - % date_at_object - ) - return query + domain += [("partner_id", "in", partner_ids)] + if target_moves == "posted": + domain += [("move_id.state", "=", "posted")] + return domain - @api.model - def _get_query( + def _recalculate_move_lines( self, + move_lines, + debit_ids, + credit_ids, + debit_amount, + credit_amount, + ml_ids, account_ids, - partner_ids, - date_at_object, - target_move, company_id, - date_from, + partner_ids, + target_moves, ): - aml_fields = [ + debit_ids = set(debit_ids) + credit_ids = set(credit_ids) + in_credit_but_not_in_debit = credit_ids - debit_ids + reconciled_ids = list(debit_ids) + list(in_credit_but_not_in_debit) + reconciled_ids = set(reconciled_ids) + ml_ids = set(ml_ids) + new_ml_ids = reconciled_ids - ml_ids + new_ml_ids = list(new_ml_ids) + new_domain = self._get_new_move_lines_domain( + new_ml_ids, account_ids, company_id, partner_ids, target_moves + ) + ml_fields = [ "id", + "name", "date", "move_id", "journal_id", "account_id", "partner_id", - "ref", - "date_maturity", "amount_residual", - "amount_currency", - "amount_residual_currency", + "date_maturity", + "ref", "debit", "credit", - "currency_id", "reconciled", - "full_reconcile_id", + "currency_id", + "amount_currency", + "amount_residual_currency", ] - query = "" - - # SELECT - for field in aml_fields: - if not query: - query = "SELECT aml.%s" % field - else: - query += ", aml.%s" % field - # name from res_partner - query += ", rp.name as partner_name" - # name from res_currency - query += ", rc.name as currency_name" - # state and name from account_move - query += ", am.state, am.name as move_name" - - # FROM - query += """ - FROM account_move_line as aml - LEFT JOIN res_partner as rp - ON aml.partner_id = rp.id - LEFT JOIN res_currency as rc - ON aml.currency_id = rc.id - LEFT JOIN account_move as am - ON am.id = aml.move_id - """ - - # WHERE - query += self._get_query_domain( - account_ids, partner_ids, date_at_object, target_move, company_id, date_from + new_move_lines = self.env["account.move.line"].search_read( + domain=new_domain, fields=ml_fields ) - return query + move_lines = move_lines + new_move_lines + for move_line in move_lines: + ml_id = move_line["id"] + if ml_id in debit_ids: + move_line["amount_residual"] += debit_amount[ml_id] + if ml_id in credit_ids: + move_line["amount_residual"] -= credit_amount[ml_id] + return move_lines + + @api.model + def _get_move_lines_domain( + self, company_id, account_ids, partner_ids, target_move, date_from + ): + domain = [ + ("account_id", "in", account_ids), + ("company_id", "=", company_id), + ("reconciled", "=", False), + ] + if partner_ids: + domain += [("partner_id", "in", partner_ids)] + if target_move == "posted": + domain += [("move_id.state", "=", "posted")] + if date_from: + domain += [("date", ">", date_from)] + return domain def _get_accounts_data(self, accounts_ids): accounts = self.env["account.account"].browse(accounts_ids) @@ -188,7 +163,6 @@ class OpenItemsReport(models.AbstractModel): journals_data.update({journal.id: {"id": journal.id, "code": journal.code}}) return journals_data - # flake8: noqa: C901 def _get_data( self, account_ids, @@ -198,69 +172,80 @@ class OpenItemsReport(models.AbstractModel): company_id, date_from, ): - query = self._get_query( - account_ids, partner_ids, date_at_object, target_move, company_id, date_from + domain = self._get_move_lines_domain( + company_id, account_ids, partner_ids, target_move, date_from ) - self._cr.execute(query) - move_lines_data = self._cr.dictfetchall() - account_ids = map(lambda r: r["account_id"], move_lines_data) - accounts_data = self._get_accounts_data(list(account_ids)) - journal_ids = map(lambda r: r["journal_id"], move_lines_data) - journals_data = self._get_journals_data(list(journal_ids)) - + ml_fields = [ + "id", + "name", + "date", + "move_id", + "journal_id", + "account_id", + "partner_id", + "amount_residual", + "date_maturity", + "ref", + "debit", + "credit", + "reconciled", + "currency_id", + "amount_currency", + "amount_residual_currency", + ] + move_lines = self.env["account.move.line"].search_read( + domain=domain, fields=ml_fields + ) + journals_ids = set() + partners_ids = set() + partners_data = {} if date_at_object < date.today(): ( - accounts_partial_reconcile, - debit_accounts_partial_amount, - credit_accounts_partial_amount, - ) = self._get_account_partial_reconciled(move_lines_data, date_at_object) - if accounts_partial_reconcile: - debit_ids = map( - operator.itemgetter("debit_move_id"), accounts_partial_reconcile + acc_partial_rec, + debit_amount, + credit_amount, + ) = self._get_account_partial_reconciled(company_id, date_at_object) + if acc_partial_rec: + ml_ids = list(map(operator.itemgetter("id"), move_lines)) + debit_ids = list( + map(operator.itemgetter("debit_move_id"), acc_partial_rec) ) - credit_ids = map( - operator.itemgetter("credit_move_id"), accounts_partial_reconcile + credit_ids = list( + map(operator.itemgetter("credit_move_id"), acc_partial_rec) ) - for move_line in move_lines_data: - if move_line["id"] in debit_ids: - move_line["amount_residual"] += debit_accounts_partial_amount[ - move_line["id"] - ] - if move_line["id"] in credit_ids: - move_line["amount_residual"] -= credit_accounts_partial_amount[ - move_line["id"] - ] - moves_lines_to_remove = [] - for move_line in move_lines_data: - if move_line["date"] > date_at_object or float_is_zero( - move_line["amount_residual"], precision_digits=2 - ): - moves_lines_to_remove.append(move_line) - if len(moves_lines_to_remove) > 0: - for move_line_to_remove in moves_lines_to_remove: - move_lines_data.remove(move_line_to_remove) - partners_data = {0: {"id": 0, "name": "Missing Partner"}} + move_lines = self._recalculate_move_lines( + move_lines, + debit_ids, + credit_ids, + debit_amount, + credit_amount, + ml_ids, + account_ids, + company_id, + partner_ids, + target_move, + ) + move_lines = [ + move_line + for move_line in move_lines + if move_line["date"] <= date_at_object + and not float_is_zero(move_line["amount_residual"], precision_digits=2) + ] + open_items_move_lines_data = {} - for move_line in move_lines_data: - no_partner = True + for move_line in move_lines: + journals_ids.add(move_line["journal_id"][0]) + acc_id = move_line["account_id"][0] # Partners data if move_line["partner_id"]: - no_partner = False - partners_data.update( - { - move_line["partner_id"]: { - "id": move_line["partner_id"], - "name": move_line["partner_name"], - "currency_id": accounts_data[move_line["account_id"]][ - "currency_id" - ], - } - } - ) + prt_id = move_line["partner_id"][0] + prt_name = move_line["partner_id"][1] else: - partners_data[0]["currency_id"] = accounts_data[ - move_line["account_id"] - ]["currency_id"] + prt_id = 0 + prt_name = "Missing Partner" + if prt_id not in partners_ids: + partners_data.update({prt_id: {"id": prt_id, "name": prt_name}}) + partners_ids.add(prt_id) # Move line update original = 0 @@ -269,39 +254,51 @@ class OpenItemsReport(models.AbstractModel): original = move_line["credit"] * (-1) if not float_is_zero(move_line["debit"], precision_digits=2): original = move_line["debit"] + + if move_line["ref"] == move_line["name"]: + if move_line["ref"]: + ref_label = move_line["ref"] + else: + ref_label = "" + elif not move_line["ref"]: + ref_label = move_line["name"] + elif not move_line["name"]: + ref_label = move_line["ref"] + else: + ref_label = move_line["ref"] + str(" - ") + move_line["name"] + move_line.update( { - "date": move_line["date"].strftime("%d/%m/%Y"), + "date": move_line["date"], "date_maturity": move_line["date_maturity"] and move_line["date_maturity"].strftime("%d/%m/%Y"), "original": original, - "partner_id": 0 if no_partner else move_line["partner_id"], - "partner_name": "" if no_partner else move_line["partner_name"], - "ref": "" if not move_line["ref"] else move_line["ref"], - "account": accounts_data[move_line["account_id"]]["code"], - "journal": journals_data[move_line["journal_id"]]["code"], + "partner_id": prt_id, + "partner_name": prt_name, + "ref_label": ref_label, + "journal_id": move_line["journal_id"][0], + "move_name": move_line["move_id"][1], + "currency_id": move_line["currency_id"][0] + if move_line["currency_id"] + else False, + "currency_name": move_line["currency_id"][1] + if move_line["currency_id"] + else False, } ) # Open Items Move Lines Data - if move_line["account_id"] not in open_items_move_lines_data.keys(): - open_items_move_lines_data[move_line["account_id"]] = { - move_line["partner_id"]: [move_line] - } + if acc_id not in open_items_move_lines_data.keys(): + open_items_move_lines_data[acc_id] = {prt_id: [move_line]} else: - if ( - move_line["partner_id"] - not in open_items_move_lines_data[move_line["account_id"]].keys() - ): - open_items_move_lines_data[move_line["account_id"]][ - move_line["partner_id"] - ] = [move_line] + if prt_id not in open_items_move_lines_data[acc_id].keys(): + open_items_move_lines_data[acc_id][prt_id] = [move_line] else: - open_items_move_lines_data[move_line["account_id"]][ - move_line["partner_id"] - ].append(move_line) + open_items_move_lines_data[acc_id][prt_id].append(move_line) + journals_data = self._get_journals_data(list(journals_ids)) + accounts_data = self._get_accounts_data(open_items_move_lines_data.keys()) return ( - move_lines_data, + move_lines, partners_data, journals_data, accounts_data, @@ -325,19 +322,31 @@ class OpenItemsReport(models.AbstractModel): return total_amount @api.model - def _get_open_items_no_partners(self, open_items_move_lines_data): + def _order_open_items_by_date( + self, open_items_move_lines_data, show_partner_details + ): new_open_items = {} - for acc_id in open_items_move_lines_data.keys(): - new_open_items[acc_id] = {} - move_lines = [] - for prt_id in open_items_move_lines_data[acc_id]: - for move_line in open_items_move_lines_data[acc_id][prt_id]: - move_lines += [move_line] - move_lines = sorted(move_lines, key=lambda k: (k["date"])) - new_open_items[acc_id] = move_lines + if not show_partner_details: + for acc_id in open_items_move_lines_data.keys(): + new_open_items[acc_id] = {} + move_lines = [] + for prt_id in open_items_move_lines_data[acc_id]: + for move_line in open_items_move_lines_data[acc_id][prt_id]: + move_lines += [move_line] + move_lines = sorted(move_lines, key=lambda k: (k["date"])) + new_open_items[acc_id] = move_lines + else: + for acc_id in open_items_move_lines_data.keys(): + new_open_items[acc_id] = {} + for prt_id in open_items_move_lines_data[acc_id]: + new_open_items[acc_id][prt_id] = {} + move_lines = [] + for move_line in open_items_move_lines_data[acc_id][prt_id]: + move_lines += [move_line] + move_lines = sorted(move_lines, key=lambda k: (k["date"])) + new_open_items[acc_id][prt_id] = move_lines return new_open_items - @api.multi def _get_report_values(self, docids, data): wizard_id = data["wizard_id"] company = self.env["res.company"].browse(data["company_id"]) @@ -361,10 +370,9 @@ class OpenItemsReport(models.AbstractModel): ) total_amount = self._calculate_amounts(open_items_move_lines_data) - if not show_partner_details: - open_items_move_lines_data = self._get_open_items_no_partners( - open_items_move_lines_data - ) + open_items_move_lines_data = self._order_open_items_by_date( + open_items_move_lines_data, show_partner_details + ) return { "doc_ids": [wizard_id], "doc_model": "open.items.report.wizard", @@ -376,6 +384,7 @@ class OpenItemsReport(models.AbstractModel): "date_at": date_at_object.strftime("%d/%m/%Y"), "hide_account_at_0": data["hide_account_at_0"], "target_move": data["target_move"], + "journals_data": journals_data, "partners_data": partners_data, "accounts_data": accounts_data, "total_amount": total_amount, diff --git a/account_financial_report/report/open_items_xlsx.py b/account_financial_report/report/open_items_xlsx.py index 5fc0841d..65345775 100644 --- a/account_financial_report/report/open_items_xlsx.py +++ b/account_financial_report/report/open_items_xlsx.py @@ -22,11 +22,11 @@ class OpenItemsXslx(models.AbstractModel): def _get_report_columns(self, report): res = { 0: {"header": _("Date"), "field": "date", "width": 11}, - 1: {"header": _("Entry"), "field": "move_id_name", "width": 18}, + 1: {"header": _("Entry"), "field": "move_name", "width": 18}, 2: {"header": _("Journal"), "field": "journal", "width": 8}, 3: {"header": _("Account"), "field": "account", "width": 9}, - 4: {"header": _("Partner"), "field": "partner", "width": 25}, - 5: {"header": _("Ref - Label"), "field": "ref", "width": 40}, + 4: {"header": _("Partner"), "field": "partner_name", "width": 25}, + 5: {"header": _("Ref - Label"), "field": "ref_label", "width": 40}, 6: {"header": _("Due date"), "field": "date_maturity", "width": 11}, 7: { "header": _("Original"), @@ -108,6 +108,7 @@ class OpenItemsXslx(models.AbstractModel): Open_items = res_data["Open_Items"] accounts_data = res_data["accounts_data"] partners_data = res_data["partners_data"] + journals_data = res_data["journals_data"] total_amount = res_data["total_amount"] show_partner_details = res_data["show_partner_details"] for account_id in Open_items.keys(): @@ -131,9 +132,25 @@ class OpenItemsXslx(models.AbstractModel): # Display account move lines for line in Open_items[account_id][partner_id]: + line.update( + { + "account": accounts_data[account_id]["code"], + "journal": journals_data[line["journal_id"]][ + "code" + ], + } + ) self.write_line_from_dict(line) # Display ending balance line for partner + partners_data[partner_id].update( + { + "currency_id": accounts_data[account_id]["currency_id"], + "currency_name": accounts_data[account_id][ + "currency_name" + ], + } + ) self.write_ending_balance_from_dict( partners_data[partner_id], type_object, @@ -150,6 +167,12 @@ class OpenItemsXslx(models.AbstractModel): # Display account move lines for line in Open_items[account_id]: + line.update( + { + "account": accounts_data[account_id]["code"], + "journal": journals_data[line["journal_id"]]["code"], + } + ) self.write_line_from_dict(line) # Display ending balance line for account diff --git a/account_financial_report/report/templates/aged_partner_balance.xml b/account_financial_report/report/templates/aged_partner_balance.xml index 8dc8fdc2..e5f4a8d1 100644 --- a/account_financial_report/report/templates/aged_partner_balance.xml +++ b/account_financial_report/report/templates/aged_partner_balance.xml @@ -295,7 +295,7 @@ - + diff --git a/account_financial_report/report/templates/general_ledger.xml b/account_financial_report/report/templates/general_ledger.xml index 42610b54..bd85cfd2 100644 --- a/account_financial_report/report/templates/general_ledger.xml +++ b/account_financial_report/report/templates/general_ledger.xml @@ -357,7 +357,7 @@ >
@@ -376,7 +376,7 @@ > @@ -397,7 +397,7 @@ > @@ -501,10 +501,7 @@ - @@ -534,7 +531,7 @@ class="o_account_financial_reports_web_action" style="color: black;" > - + @@ -544,7 +541,7 @@ class="o_account_financial_reports_web_action" style="color: black;" > - + @@ -780,7 +777,7 @@ >
@@ -799,7 +796,7 @@ > @@ -820,7 +817,7 @@ > diff --git a/account_financial_report/report/templates/open_items.xml b/account_financial_report/report/templates/open_items.xml index 56a59539..30662a7d 100644 --- a/account_financial_report/report/templates/open_items.xml +++ b/account_financial_report/report/templates/open_items.xml @@ -172,7 +172,7 @@
- +
@@ -190,11 +190,11 @@
- +
- +
@@ -203,7 +203,7 @@
- +
diff --git a/account_financial_report/report/trial_balance.py b/account_financial_report/report/trial_balance.py index 9dce0232..f6bad477 100644 --- a/account_financial_report/report/trial_balance.py +++ b/account_financial_report/report/trial_balance.py @@ -3,7 +3,6 @@ # Copyright 2020 ForgeFlow S.L. (https://www.forgeflow.com) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -from operator import itemgetter from odoo import api, models @@ -203,10 +202,11 @@ class TrialBalanceReport(models.AbstractModel): for initial_balance in initial_balances: pl_initial_balance += initial_balance["balance"] if foreign_currency: - pl_initial_currency_balance += initial_balance["amount_currency"] + pl_initial_currency_balance += round( + initial_balance["amount_currency"], 2 + ) return pl_initial_balance, pl_initial_currency_balance - # flake8: noqa: C901 def _get_data( self, account_ids, @@ -222,6 +222,15 @@ class TrialBalanceReport(models.AbstractModel): unaffected_earnings_account, fy_start_date, ): + accounts_domain = [("company_id", "=", company_id)] + if account_ids: + accounts_domain += [("id", "in", account_ids)] + accounts = self.env["account.account"].search(accounts_domain) + tb_initial_acc = [] + for account in accounts: + tb_initial_acc.append( + {"account_id": account.id, "balance": 0.0, "amount_currency": 0.0} + ) initial_domain_bs = self._get_initial_balances_bs_ml_domain( account_ids, journal_ids, @@ -251,7 +260,18 @@ class TrialBalanceReport(models.AbstractModel): fields=["account_id", "balance", "amount_currency"], groupby=["account_id"], ) - tb_initial_acc = tb_initial_acc_bs + tb_initial_acc_pl + tb_initial_acc_rg = tb_initial_acc_bs + tb_initial_acc_pl + for account_rg in tb_initial_acc_rg: + element = list( + filter( + lambda acc_dict: acc_dict["account_id"] + == account_rg["account_id"][0], + tb_initial_acc, + ) + ) + if element: + element[0]["balance"] += account_rg["balance"] + element[0]["amount_currency"] += account_rg["amount_currency"] if hide_account_at_0: tb_initial_acc = [p for p in tb_initial_acc if p["balance"] != 0] @@ -311,9 +331,11 @@ class TrialBalanceReport(models.AbstractModel): total_amount[acc_id]["ending_balance"] = tb["balance"] if foreign_currency: total_amount[acc_id]["initial_currency_balance"] = 0.0 - total_amount[acc_id]["ending_currency_balance"] = tb["amount_currency"] + total_amount[acc_id]["ending_currency_balance"] = round( + tb["amount_currency"], 2 + ) for tb in tb_initial_acc: - acc_id = tb["account_id"][0] + acc_id = tb["account_id"] if acc_id not in total_amount.keys(): total_amount[acc_id] = {} total_amount[acc_id]["credit"] = 0.0 @@ -322,22 +344,22 @@ class TrialBalanceReport(models.AbstractModel): total_amount[acc_id]["initial_balance"] = tb["balance"] total_amount[acc_id]["ending_balance"] = tb["balance"] if foreign_currency: - total_amount[acc_id]["initial_currency_balance"] = tb[ - "amount_currency" - ] - total_amount[acc_id]["ending_currency_balance"] = tb[ - "amount_currency" - ] + total_amount[acc_id]["initial_currency_balance"] = round( + tb["amount_currency"], 2 + ) + total_amount[acc_id]["ending_currency_balance"] = round( + tb["amount_currency"], 2 + ) else: total_amount[acc_id]["initial_balance"] = tb["balance"] total_amount[acc_id]["ending_balance"] += tb["balance"] if foreign_currency: - total_amount[acc_id]["initial_currency_balance"] = tb[ - "amount_currency" - ] - total_amount[acc_id]["ending_currency_balance"] += tb[ - "amount_currency" - ] + total_amount[acc_id]["initial_currency_balance"] = round( + tb["amount_currency"], 2 + ) + total_amount[acc_id]["ending_currency_balance"] += round( + tb["amount_currency"], 2 + ) if show_partner_details: partners_ids = set() partners_data = {} @@ -357,9 +379,9 @@ class TrialBalanceReport(models.AbstractModel): total_amount[acc_id][prt_id]["ending_balance"] = tb["balance"] if foreign_currency: total_amount[acc_id][prt_id]["initial_currency_balance"] = 0.0 - total_amount[acc_id][prt_id]["ending_currency_balance"] = tb[ - "amount_currency" - ] + total_amount[acc_id][prt_id]["ending_currency_balance"] = round( + tb["amount_currency"], 2 + ) partners_ids.add(tb["partner_id"]) for tb in tb_initial_prt: acc_id = tb["account_id"][0] @@ -379,10 +401,10 @@ class TrialBalanceReport(models.AbstractModel): if foreign_currency: total_amount[acc_id][prt_id][ "initial_currency_balance" - ] = tb["amount_currency"] + ] = round(tb["amount_currency"], 2) total_amount[acc_id][prt_id][ "ending_currency_balance" - ] = tb["amount_currency"] + ] = round(tb["amount_currency"], 2) partners_ids.add(tb["partner_id"]) elif prt_id not in total_amount[acc_id].keys(): total_amount[acc_id][prt_id] = {} @@ -394,10 +416,10 @@ class TrialBalanceReport(models.AbstractModel): if foreign_currency: total_amount[acc_id][prt_id][ "initial_currency_balance" - ] = tb["amount_currency"] + ] = round(tb["amount_currency"], 2) total_amount[acc_id][prt_id][ "ending_currency_balance" - ] = tb["amount_currency"] + ] = round(tb["amount_currency"], 2) partners_ids.add(tb["partner_id"]) else: total_amount[acc_id][prt_id]["initial_balance"] += tb["balance"] @@ -405,10 +427,10 @@ class TrialBalanceReport(models.AbstractModel): if foreign_currency: total_amount[acc_id][prt_id][ "initial_currency_balance" - ] += tb["amount_currency"] + ] += round(tb["amount_currency"], 2) total_amount[acc_id][prt_id][ "ending_currency_balance" - ] += tb["amount_currency"] + ] += round(tb["amount_currency"], 2) accounts_ids = list(total_amount.keys()) unaffected_id = unaffected_earnings_account if unaffected_id not in accounts_ids: diff --git a/account_financial_report/report/vat_report.py b/account_financial_report/report/vat_report.py index 7789a917..26d69dd8 100644 --- a/account_financial_report/report/vat_report.py +++ b/account_financial_report/report/vat_report.py @@ -2,6 +2,8 @@ # Copyright 2020 ForgeFlow S.L. (https://www.forgeflow.com) # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +import operator + from odoo import api, models @@ -19,6 +21,7 @@ class VATReport(models.AbstractModel): "id": tax.id, "name": tax.name, "tax_group_id": tax.tax_group_id.id, + "type_tax_use": tax.type_tax_use, } } ) @@ -49,26 +52,27 @@ class VATReport(models.AbstractModel): domain=domain, fields=ml_fields ) vat_data = {} - tax_ids = set() + tax_ids = list(map(operator.itemgetter("tax_line_id"), tax_move_lines)) + tax_ids = [i[0] for i in tax_ids] + tax_data = self._get_tax_data(tax_ids) for tax_move_line in tax_move_lines: tax_ml_id = tax_move_line["id"] repartition = self.env["account.tax.repartition.line"].browse( tax_move_line["tax_repartition_line_id"][0] ) + tax_id = tax_move_line["tax_line_id"][0] vat_data[tax_ml_id] = {} vat_data[tax_ml_id].update( { "id": tax_ml_id, "net": tax_move_line["tax_base_amount"], - "tax": tax_move_line["balance"] - if tax_move_line["balance"] > 0 - else (-1) * tax_move_line["balance"], + "tax": (-1) * tax_move_line["balance"] + if tax_data[tax_id]["type_tax_use"] == "sale" + else tax_move_line["balance"], "tax_line_id": tax_move_line["tax_line_id"], "tags_ids": repartition.tag_ids.ids, } ) - tax_ids.add(tax_move_line["tax_line_id"][0]) - tax_data = self._get_tax_data(tax_ids) return vat_data, tax_data def _get_tax_group_data(self, tax_group_ids): diff --git a/account_financial_report/wizard/aged_partner_balance_wizard.py b/account_financial_report/wizard/aged_partner_balance_wizard.py index b1d67361..c609a820 100644 --- a/account_financial_report/wizard/aged_partner_balance_wizard.py +++ b/account_financial_report/wizard/aged_partner_balance_wizard.py @@ -20,6 +20,7 @@ class AgedPartnerBalanceWizard(models.TransientModel): string="Company", ) date_at = fields.Date(required=True, default=fields.Date.context_today) + date_from = fields.Date(string="Date From") target_move = fields.Selection( [("posted", "All Posted Entries"), ("all", "All Entries")], string="Target Moves", @@ -152,6 +153,7 @@ class AgedPartnerBalanceWizard(models.TransientModel): return { "wizard_id": self.id, "date_at": self.date_at, + "date_from": self.date_from or False, "only_posted_moves": self.target_move == "posted", "company_id": self.company_id.id, "account_ids": self.account_ids.ids, diff --git a/account_financial_report/wizard/aged_partner_balance_wizard_view.xml b/account_financial_report/wizard/aged_partner_balance_wizard_view.xml index 337b2114..ebef2daa 100644 --- a/account_financial_report/wizard/aged_partner_balance_wizard_view.xml +++ b/account_financial_report/wizard/aged_partner_balance_wizard_view.xml @@ -16,6 +16,7 @@ + diff --git a/account_financial_report/wizard/general_ledger_wizard.py b/account_financial_report/wizard/general_ledger_wizard.py index 20efdbeb..ab0963f0 100644 --- a/account_financial_report/wizard/general_ledger_wizard.py +++ b/account_financial_report/wizard/general_ledger_wizard.py @@ -85,6 +85,7 @@ class GeneralLedgerReportWizard(models.TransientModel): string="Account Code To", help="Ending account in a range", ) + show_partner_details = fields.Boolean(string="Show Partner Details", default=True,) @api.onchange("account_code_from", "account_code_to") def on_change_account_range(self): @@ -300,6 +301,7 @@ class GeneralLedgerReportWizard(models.TransientModel): "company_id": self.company_id.id, "account_ids": self.account_ids.ids, "partner_ids": self.partner_ids.ids, + "show_partner_details": self.show_partner_details, "cost_center_ids": self.cost_center_ids.ids, "analytic_tag_ids": self.analytic_tag_ids.ids, "journal_ids": self.account_journal_ids.ids, diff --git a/account_financial_report/wizard/general_ledger_wizard_view.xml b/account_financial_report/wizard/general_ledger_wizard_view.xml index d1b0b49d..a75ee728 100644 --- a/account_financial_report/wizard/general_ledger_wizard_view.xml +++ b/account_financial_report/wizard/general_ledger_wizard_view.xml @@ -26,6 +26,7 @@ +