diff --git a/account_statement_import_sheet_file/README.rst b/account_statement_import_sheet_file/README.rst new file mode 100644 index 0000000000..249e04b966 --- /dev/null +++ b/account_statement_import_sheet_file/README.rst @@ -0,0 +1,138 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + +================================== +Bank Statement TXT/CSV/XLSX Import +================================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:7f262d73d39b721a7fe36fc8279b95fed86757391be9ea917e3f13ee9f4cd83f + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--statement--import-lightgray.png?logo=github + :target: https://github.com/OCA/bank-statement-import/tree/19.0/account_statement_import_sheet_file + :alt: OCA/bank-statement-import +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/bank-statement-import-19-0/bank-statement-import-19-0-account_statement_import_sheet_file + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/bank-statement-import&target_branch=19.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows you to import any TXT/CSV or XLSX file in Odoo as +bank statements. + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +To create TXT/CSV/XLSX statement sheet columns mapping: + +1. Open *Invoicing > Configuration > Accounting > Statement Sheet + Mappings* +2. Create mapping(s) according to your online banking software statement + format + +Usage +===== + +To use this module, you need to: + +1. Get statement in TXT/CSV or XLSX from your online banking software +2. Go to Odoo and and import the statement file, selecting corresponding + format + +Changelog +========= + +12.0.2.0.0 +---------- + +- [BREAKING] New mapping, please review mappings after upgrade. +- [BREAKING] Different bank accounts have to be used per each currency. +- [ADD] Support for both Statement and Activity reports. +- [ADD] Separate fee and currency exchange parsing. + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* ForgeFlow +* CorporateHub + +Contributors +------------ + +- Alexis de Lattre +- Sebastien BEAU +- Katherine Zaoral +- Tecnativa (https://www.tecnativa.com) + + - Vicent Cubells + - Victor M.M. Torres + - Víctor Martínez + +- ForgeFlow (https://www.forgeflow.com) + + - Jordi Ballester Alomar + - Miquel Raïch Regué + +- `CorporateHub `__ + + - Alexey Pelykh + +- Sebastiano Picchi sebastiano.picchi@pytech.it + +Maintainers +----------- + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +.. |maintainer-alexey-pelykh| image:: https://github.com/alexey-pelykh.png?size=40px + :target: https://github.com/alexey-pelykh + :alt: alexey-pelykh + +Current `maintainer `__: + +|maintainer-alexey-pelykh| + +This module is part of the `OCA/bank-statement-import `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_statement_import_sheet_file/__init__.py b/account_statement_import_sheet_file/__init__.py new file mode 100644 index 0000000000..9b4296142f --- /dev/null +++ b/account_statement_import_sheet_file/__init__.py @@ -0,0 +1,2 @@ +from . import models +from . import wizard diff --git a/account_statement_import_sheet_file/__manifest__.py b/account_statement_import_sheet_file/__manifest__.py new file mode 100644 index 0000000000..d4e9c998c2 --- /dev/null +++ b/account_statement_import_sheet_file/__manifest__.py @@ -0,0 +1,26 @@ +# Copyright 2019 ForgeFlow, S.L. +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# Copyright 2025 Tecnativa - Pedro M. Baeza +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Bank Statement TXT/CSV/XLSX Import", + "summary": "Import TXT/CSV or XLSX files as Bank Statements in Odoo", + "version": "19.0.1.0.0", + "category": "Accounting", + "website": "https://github.com/OCA/bank-statement-import", + "author": "ForgeFlow, CorporateHub, Odoo Community Association (OCA)", + "maintainers": ["alexey-pelykh"], + "license": "AGPL-3", + "installable": True, + "depends": [ + "account_statement_import_file", + ], + "data": [ + "security/ir.model.access.csv", + "data/map_data.xml", + "views/account_statement_import_sheet_mapping.xml", + "views/account_statement_import.xml", + "views/account_journal_views.xml", + ], +} diff --git a/account_statement_import_sheet_file/data/map_data.xml b/account_statement_import_sheet_file/data/map_data.xml new file mode 100644 index 0000000000..ea50132080 --- /dev/null +++ b/account_statement_import_sheet_file/data/map_data.xml @@ -0,0 +1,26 @@ + + + + + Sample Statement + 0 + 1 + comma + dot + comma + " + %m/%d/%Y + Date + simple_value + Amount + Currency + Amount Currency + Label + Partner Name + Bank Account + + diff --git a/account_statement_import_sheet_file/i18n/account_statement_import_sheet_file.pot b/account_statement_import_sheet_file/i18n/account_statement_import_sheet_file.pot new file mode 100644 index 0000000000..88ff1ecdca --- /dev/null +++ b/account_statement_import_sheet_file/i18n/account_statement_import_sheet_file.pot @@ -0,0 +1,590 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_sheet_file +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +msgid "%(code)s: %(filename)s" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +"\n" +" Add the column names or column number (when the file has no header). You can concatenate multiple columns in the file into the same field, indicating the column names or numbers separated by comma.\n" +" " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +"\n" +" indicate the column number in the Columns section. The first column is 0.\n" +" " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +msgid "Account: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +msgid "Bad file/mapping: " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +msgid "Bank: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic" +" currency conversion, column to get original currency of transaction from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic" +" currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in" +" the inverse sign. By setting this flag during the upload the amounts will " +"be inverted in sign." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +msgid "N/A" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +msgid "No valid encoding was found for the attached file" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +msgid "Transaction ID: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type" +" = 'Distinct Credit/debit Column'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "" diff --git a/account_statement_import_sheet_file/i18n/es.po b/account_statement_import_sheet_file/i18n/es.po new file mode 100644 index 0000000000..3a52a58691 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/es.po @@ -0,0 +1,655 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: 2024-05-12 21:35+0000\n" +"Last-Translator: Sergio Ariel Ameghino \n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "%(code)s: %(filename)s" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" +" Agregue los nombres de columna o el " +"número de columna (cuando el archivo no tiene encabezado).\n" +" Puede concatenar varias columnas en el " +"archivo en el mismo campo, indicando el\n" +" nombres de columnas o números separados por " +"comas." + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" +" indique el número de columna en la " +"sección Columnas. La primera columna es 0." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "Valor absoluto" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "Cuenta: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "Columna Importe" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "Tipo de importe" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "Archivo/mapeo defectuoso: " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "Columna de balance" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "Saldo después de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "Baltic (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "Columna Cuenta bancaria" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "Columna Nombre del banco" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "Mapeo de hojas de importación de extractos bancarios" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "Analizador de hojas de importación de extractos bancarios" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "Banco: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "Central European (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "Columnas" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "Creado el" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "Valor de crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "Columna de crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "Total de crédito de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "Columna de moneda" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Cyrillic (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Cyrillic (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Cyrillic (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "Valor de débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "Columna de débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "Importe de débito de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "Columna de débito/crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "Separador de decimales" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "Mapeo por defecto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "Delimitador" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "Columna de descripción" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "Nombre mostrado" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "Distinta Columna de Crédito/débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "Codificación" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "El fichero no contiene una línea de cabecera" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "Recuento de líneas omitidas a pie de página" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "Recuento de líneas de cabecera omitidas" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "Importar ficheros de extracto bancario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" +"En caso de que el extracto sea en varias monedas, columna para obtener la " +"moneda de la transacción de" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" +"En caso de que el extracto proporcione la moneda original para transacciones " +"con conversión automática de moneda, columna para obtener la moneda original " +"de la transacción" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" +"En caso de que el extracto proporcione la moneda original para transacciones " +"con conversión automática de moneda, columna para obtener el monto de la " +"transacción original en la moneda de la transacción original de" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" +"En algunos casos, como en los extractos de tarjetas de crédito, los importes " +"se expresan con el signo invertido. Activando este indicador durante la " +"carga, los importes tendrán el signo invertido." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "Signo inverso del importe" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "Japonés (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "Diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "Última modificación por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "Última modificación el" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "N/A" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "Nombre" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "No hay una codificación válida para el fichero adjunto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "Columna de Notas" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "Columna de importe original" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "Columna de moneda original" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "Columna de contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "Banco del contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "Número de cuenta del contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "Columna de referencia" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" +"Establezca el número de líneas del pie de página. Se utiliza en algunos " +"archivos csv/xlsx que integran metadatos en las últimas líneas." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "Establezca el número de líneas de Cabecera." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "Hoja mapeo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "Valor simple" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "Mapeo de importación de extracto" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "Mapeos de importación de extractos" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "Mapeos TXT/CSV/XLSX:" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "Calificador de texto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "Separador de miles" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "Columna de marca de tiempo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "Formato de marca de tiempo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "Chino tradicional (big5)" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "ID de transacción: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "Unified Chinese (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "Columna de ID único de trasacción" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "Utilice amount_column si ha establecido Amount type = 'Single value'" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" +"Utilice amount_debit_column y amount_credit_column si ha establecido Amount " +"type = 'Distinct Credit/debit Column'" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "" +"Utilice debit_credit_column si ha establecido Amount type = 'Absolute value'" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" +"Se utiliza si el tipo de importe es \"Valor absoluto\".\n" +"Algunos formatos de extracto utilizan el valor de importe absoluto e indican " +"el signo\n" +"de la transacción especificando si fue de débito o de crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" +"Se utiliza si el tipo de importe es \"Valor simple\" o \"Valor absoluto\".\n" +"Importe de la transacción en la divisa del diario\n" +"Algunos formatos de extracto utilizan columnas de crédito/débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "Valor de la columna de débito/crédito que indica si es un crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "Valor de la columna de débito/crédito que indica si es un débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "Occidental (Latín-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "Occidental (Windows-1252)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" +"Cuando esto ocurra, indique el número de columna en la sección Columnas en " +"lugar del nombre de la columna, teniendo en cuenta que la primera columna es " +"0" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "coma (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "punto (.)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "ninguno" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "cita (')" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "punto y coma (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "espacio" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "tabulador" + +#~ msgid "Last Modified on" +#~ msgstr "Última modificación el" + +#~ msgid "" +#~ "Simple value: use igned amount in ammount comlumn\n" +#~ "Absolute Value: use a same comlumn for debit and credit\n" +#~ "(absolute value + indicate sign)\n" +#~ "Distinct Credit/debit Column: use a distinct comlumn for debit and credit" +#~ msgstr "" +#~ "Valor simple: utilizar un importe ignorado en la columna importe\n" +#~ "Valor absoluto: utilizar una misma columna para el debe y el haber\n" +#~ "(valor absoluto + signo indicativo)\n" +#~ "Columna distinta para débito/crédito: utilice una columna distinta para " +#~ "débito y crédito" diff --git a/account_statement_import_sheet_file/i18n/es_AR.po b/account_statement_import_sheet_file/i18n/es_AR.po new file mode 100644 index 0000000000..6b70c9c004 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/es_AR.po @@ -0,0 +1,660 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: 2023-10-18 08:15+0200\n" +"Last-Translator: Ignacio Buioli \n" +"Language-Team: none\n" +"Language: es_AR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Poedit 3.0.1\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, fuzzy, python-format +msgid "%(code)s: %(filename)s" +msgstr "%(code)s: %(filename)s" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +#, fuzzy +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" +" Agregue los nombres de columna o el " +"número de columna (cuando el archivo no tiene encabezado).\n" +" Puede concatenar varias columnas en el " +"archivo en el mismo campo, indicando el\n" +" nombres de columnas o números separados por " +"comas." + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +#, fuzzy +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" +" indique el número de columna en la " +"sección Columnas. La primera columna es 0." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "Cuenta: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +#, fuzzy +msgid "Amount column" +msgstr "Columna de débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +#, fuzzy +msgid "Balance Column" +msgstr "Columna de balance" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "Saldo despues de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "Báltico (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +#, fuzzy +msgid "Bank Account Column" +msgstr "Columna Cuenta bancaria" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +#, fuzzy +msgid "Bank Name Column" +msgstr "Columna Nombre del banco" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "Mapeo de Hojas de Importación de Extractos Bancarios" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "Analizador de Hojas de Importación de Extractos Bancarios" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "Banco: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "Centro Europeo (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "Columnas" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "Creado en" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +#, fuzzy +msgid "Credit Value" +msgstr "Valor de crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +#, fuzzy +msgid "Credit amount column" +msgstr "Columna de crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +#, fuzzy +msgid "Credit amount of transaction in journal's currency" +msgstr "Total de crédito de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +#, fuzzy +msgid "Currency Column" +msgstr "Columna de moneda" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Cirílico (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Cirílico (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Cirílico (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +#, fuzzy +msgid "Debit Value" +msgstr "Valor de débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +#, fuzzy +msgid "Debit amount column" +msgstr "Columna de débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +#, fuzzy +msgid "Debit amount of transaction in journal's currency" +msgstr "Importe de débito de la transacción en la moneda del diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "Columna de Débito/crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "Separador de Decimales" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "Mapeo de Hoja Predeterminado" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "Delimitador" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +#, fuzzy +msgid "Description Column" +msgstr "Columna de descripción" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "Mostrar Nombre" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +#, fuzzy +msgid "Distinct Credit/debit Column" +msgstr "Columna de Débito/Crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "Codificación" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +#, fuzzy +msgid "File does not contain header line" +msgstr "El fichero no contiene una línea de cabecera" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "Importar Archivos de Extractos Bancarios" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" +"En caso de que el estado de cuenta sea multi-moneda, columna para obtener la " +"moneda de la transacción" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" +"En caso de que el estado de cuenta proporcione la moneda original para " +"transacciones con conversión automática de moneda, columna para obtener la " +"moneda original de la transacción" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" +"En caso de que el estado de cuenta proporcione la moneda original para las " +"transacciones con conversión automática de moneda, columna para obtener el " +"monto de la transacción original en la moneda de la transacción original" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "Japonés (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "Diario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "Última actualización realizada por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "Última actualización el" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "N/A" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "Nombre" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, fuzzy, python-format +msgid "No valid encoding was found for the attached file" +msgstr "No hay una codificación válida para el fichero adjunto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +#, fuzzy +msgid "Notes Column" +msgstr "Columna de Notas" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +#, fuzzy +msgid "Original Amount Column" +msgstr "Columna de importe original" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +#, fuzzy +msgid "Original Currency Column" +msgstr "Columna de moneda original" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +#, fuzzy +msgid "Partner Name Column" +msgstr "Columna de contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "Banco del contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "Cuenta bancaria del contacto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +#, fuzzy +msgid "Reference Column" +msgstr "Columna de referencia" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "Hoja de mapeo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "Mapeo de Importación de Estados" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "Mapeos de Hojas de Estados" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "Mapeo TXT/CSV/XLSX:" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "Calificador de texto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "Separador de miles" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +#, fuzzy +msgid "Timestamp Column" +msgstr "Columna de marca de tiempo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "Formato de Tiempo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "Chino Tradicional (big5)" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "ID de Transacción: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (con BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (con BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "Chino Unificado (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "Columna de ID único de transacción" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +#, fuzzy +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" +"Algunos formatos de estado de cuenta usan un valor de monto absoluto e " +"indican el signo de la transacción especificando si fue de débito o de " +"crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "Valor de la columna de débito/crédito que indica si es un crédito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "Valor de la columna de débito/crédito que indica si es un débito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "Oeste (Latin-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "Oeste (Windows-1252)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +#, fuzzy +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" +"Cuando esto ocurra, indique el número de columna en la sección Columnas en " +"lugar del nombre de la columna, teniendo en cuenta que la primera columna es " +"0" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "coma (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "punto (.)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "ninguno" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "punto-y-coma (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "espacio" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "tabulación" + +#~ msgid "Last Modified on" +#~ msgstr "Última modificación en" + +#, fuzzy +#~ msgid "Use amount_column OR (amount_debit_column AND amount_credit_column)." +#~ msgstr "" +#~ "Usar amount_column OR (amount_debit_column AND amount_credit_column)." diff --git a/account_statement_import_sheet_file/i18n/it.po b/account_statement_import_sheet_file/i18n/it.po new file mode 100644 index 0000000000..b7f0830769 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/it.po @@ -0,0 +1,658 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: 2024-12-05 12:06+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.6.2\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "%(code)s: %(filename)s" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" +" Aggiungi il nome delle colonne o il " +"numero (quando il file non ha intestazione).\n" +" Puoi concatenare colonne multiple nello " +"stesso campo, indicando i\n" +" nomi delle colonne o i numeri separati da " +"virgola." + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" +" indica il numero della colonna nella " +"sezione Colonne. La prima colonna è 0." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "Valore assoluto" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "Conto: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "Consente di saltare righe vuote" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "Colonna importo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "Tipo importo" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "File/mapping errato: " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "Colonna saldo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "Saldo dopo l'operazione nella valuta del registro" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "Baltico (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "Colonna Conto Corrente" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "Colonna Nome Banca" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "Mappatura foglio importazione estratti conto bancari" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "Analizzatore foglio importazione estratti conto bancari" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "Banca: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "Europeo centrale (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "Colonne" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "Colonne da ignorare prima di iniziare l'elaborazione" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "Creato da" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "Creato il" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "Valore Credito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "Colonna importo credito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "Importo credito della transazione nella valuta del registro" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "Colonna Valuta" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Cirillico (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Cirillico (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Cirillico (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "Valore Debito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "Colonna importo debito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "Importo debito della transazione nella valuta del registro" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "Colonna dare/avere" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "Separatore decimali" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "Mappatura foglio predefinita" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "Delimitatore" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "Colonna Descrizione" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "Colonne dare/avere distinte" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "Codifica" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "Il file non contiene riga di intestazione" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "Numero righe da saltare a piè pagina" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "Numero righe da saltare in intestazione" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "Importazione file estratto conto bancario" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" +"In caso di estratto conto multivaluta, colonna dalla quale ottenere la " +"valuta dell'operazione" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" +"Nel caso in cui l'estratto conto fornisca la valuta originaria per " +"operazioni con conversione automatica, colonna dalla quale ottenere tale " +"valuta" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" +"Nel caso in cui l'estratto conto fornisca la valuta originaria per " +"operazioni con conversione automatica, colonna dalla quale ottenere " +"l'importo originario dell'operazione in tale valuta" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" +"In alcuni casi come le transazioni delle carte di credito gli importi sono " +"espressi con il segno invero. Impostando questo flag durante il caricamento " +"gli importi verranno invertiti di segno." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "Inverti il segno dell'importo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "Giapponese (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "Registro" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "Ultimo aggiornamento di" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "Ultimo aggiornamento il" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "N/D" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "Nome" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "Nessuna codifica valida è stata trovata per il file allegato" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "Colonna Note" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "Colonna offset" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "L'offset non può essere negativo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "Colonna Importo Originale" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "Colonna Valuta Originale" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "Colonna Nome Contatto" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "Banca del partner" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "Conto bancario del partner" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "Colonna Riferimento" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" +"Imposta il numero di righe a piè pagina Usata in alcuni file csv/xlsx che " +"riportano dati extra nelle ultime righe." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "Imposta il numero di righe di Intestazione." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "Mappatura foglio" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "Valore semplice" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" +"Valore semplice: usare valore con segno nella colonna valore\n" +"Valore assoluto: usare la stessa colonna per debiti e crediti\n" +"(valore assoluto + segno)\n" +"Colonna distinta credito/debito: usare una colonna distitna per debiti e " +"crediti" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "Salta righe vuote" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "Mappa di importazione estratti conto" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "Mappature foglio estratti conto" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "Mappatura TXT/CSV/XLSX:" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "Qualificatore testo" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "Separatore migliaia" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "Colonna data/ora" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "Formato marcatura temporale" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "Cinese tradizionale (big5)" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "ID operazione: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (con BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (con BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "Cinese unificato (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "Colonna ID operazione univoca" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "Usa colonna importo se il tipo importo = 'Singolo valore'" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" +"Usa colonna importo debito e colonna importo credito se tipo importo = " +"'Distingui colonne Credito/Debito'" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "Usa colonna debito/credito se tipo importo = 'Valore assoluto'" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" +"Utilizzato se il tipo valore è \"Valore assoluto\".\n" +"Alcuni formati di estratto conto utilizzano un valore assoluto e indicano \n" +"il segno dell'operazione specificando se è in dare o in avere" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" +"Usato se il tipo importo è \"Valore semplice\" o \"Valore assoluto\"\n" +"Importo della transazione nella valuta del registro\n" +"Alcuni formati di transazione usano colonne credito/debito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "Valore della colonna dare/avere che indica se è un credito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "Valore della colonna dare/avere che indica se è un debito" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "Occidentale (Latin-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "Occidentale (Windows-1252)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" +"Quando questo capita prego indicare il numero di colonna nella sezione " +"Colonne invece del nome della colonna, considerando che l'indice della prima " +"colonna è 0" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "virgola (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "punto (.)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "nessuno" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "apice (')" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "punto e virgola (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "spazio" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "tabulazione" + +#~ msgid "Last Modified on" +#~ msgstr "Ultima modifica il" + +#~ msgid "" +#~ "Simple value: use igned amount in ammount comlumn\n" +#~ "Absolute Value: use a same comlumn for debit and credit\n" +#~ "(absolute value + indicate sign)\n" +#~ "Distinct Credit/debit Column: use a distinct comlumn for debit and credit" +#~ msgstr "" +#~ "Valore semplice: usa il valore con segno nella colonna importo\n" +#~ "Valore assoluto: usa la stessa colonna per debito e credito\n" +#~ "(valore assoluto + segno indicato)\n" +#~ "Distinzione colonne Debito/Credito: una due colonne distinte per debito e " +#~ "credito" diff --git a/account_statement_import_sheet_file/i18n/nl.po b/account_statement_import_sheet_file/i18n/nl.po new file mode 100644 index 0000000000..2065e5d4c9 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/nl.po @@ -0,0 +1,613 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_bank_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: 2023-10-18 08:14+0200\n" +"Last-Translator: Bosd \n" +"Language-Team: none\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Poedit 3.0.1\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "Rekening: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "Baltic (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +#, fuzzy +msgid "Bank Statement Import Sheet Mapping" +msgstr "Bankafschrift import mapping" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +#, fuzzy +msgid "Bank Statement Import Sheet Parser" +msgstr "Bankafschrift parser" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "Bank: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "Central European (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "Kolommen" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "Aangemaakt door" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "Aangemaakt op" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Cyrillic (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Cyrillic (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Cyrillic (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "Decimaal scheidingsteken" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "Standaard afschrift mapping" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "Scheidingsteken" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "Weergavenaam" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "Codering" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +#, fuzzy +msgid "Import Bank Statement Files" +msgstr "Importeer bankafschrift" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "Japanese (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "Dagboek" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "Laatst gewijzigt door" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +#, fuzzy +msgid "Last Updated on" +msgstr "Laatst bijgewerkt op" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "N.V.T." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "Naam" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "Transactie ID: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "Unified Chinese (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "Unieke transactie ID kolom" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "Western (Latin-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "comma (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "punt (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "geen" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "puntcomma (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "spatie" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "tab" + +#~ msgid "Last Modified on" +#~ msgstr "Laatst gewijzigt op" diff --git a/account_statement_import_sheet_file/i18n/pt.po b/account_statement_import_sheet_file/i18n/pt.po new file mode 100644 index 0000000000..096fc0dbb2 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/pt.po @@ -0,0 +1,616 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: Poedit 3.0.1\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +#, fuzzy +msgid "Created by" +msgstr "Criado por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +#, fuzzy +msgid "Created on" +msgstr "Criado em" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +#, fuzzy +msgid "Display Name" +msgstr "Exibir Nome" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +#, fuzzy +msgid "ID" +msgstr "ID (Identificação)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +#, fuzzy +msgid "Last Updated by" +msgstr "Última Atualização Feita por" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +#, fuzzy +msgid "Last Updated on" +msgstr "Última Atualização Feita em" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "" + +#, fuzzy +#~ msgid "Last Modified on" +#~ msgstr "Última Modificação Feita em" diff --git a/account_statement_import_sheet_file/i18n/tr.po b/account_statement_import_sheet_file/i18n/tr.po new file mode 100644 index 0000000000..3775fce2ad --- /dev/null +++ b/account_statement_import_sheet_file/i18n/tr.po @@ -0,0 +1,644 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_statement_import_sheet_file +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2024-02-06 14:34+0000\n" +"Last-Translator: Ömer KÜLAK \n" +"Language-Team: none\n" +"Language: tr\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 4.17\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" +" Sütun adı ya da no ekleyin (aktarım " +"şablonunda başlık yoksa).\n" +" Dosyadaki birden fazla sütunu aynı alanda " +"birleştirebilirsiniz, sütun adlarını\n" +" veya numaralarını virgülle ayırarak " +"belirtiniz." + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "" +" Sütunlar bölümünde sütun numarasını " +"belirtir. İlk sütun 0." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "Mutlak Tutar" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "Hesap: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "Hesap Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "Tutar Türü" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "Dosya/Eşleşme hatası: " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "Bakiye Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "İşlem sonrası para birimi cinsinden bakiye" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "Baltık (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "Banka Hesabı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "Banka Adı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "Banka Ekstresi Aktarım Şablonu Eşlemesi" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "Banka Ekstresi Aktarım Şablonu Ayrıştırıcısı" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "Banka: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "Orta Avrupa (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "Sütunlar" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "Oluşturan" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "Oluşturulma" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "Borç Değeri" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "Borç Tutarı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "Para birimi cinsinden işlemin borç tutarı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "Para Birimi Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Kiril (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Kiril (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Kiril (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "Alacak Değeri" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "Alacak Tutarı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "Para birimi cinsinden işlemin alacak tutarı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "Alacak/Borç Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "Desimal Ayıracı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "Varsayılan Şablon Eşleşmesi" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "Sınırlayıcı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "Açıklama Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "Görünen Adı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "Alacak/Borç Farkı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "Kodlama" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "Dosya da başlık satırı bulunamadı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "Altbilgi Satır Sayısı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "Başlık Satır Sayısı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "Banka Ekstreleri Aktarımı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "" +"Birden fazla para birimi olması durumunda, işlemin para biriminin alınacağı " +"sütun" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "" +"Otomatik para birimi dönüştürmeli işlemler için orijinal para birimini " +"sağlanması durumunda, işlemin orijinal para biriminin alınacağı sütun" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" +"Otomatik para birimi dönüştürmeli işlemler için orijinal para birimini " +"sağlaması durumunda, orijinal işlem tutarını orijinal işlem para biriminden " +"alınacağı sütun" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" +"Kredi kartı ekstrelerinde olduğu gibi bazı durumlarda tutarlar ters işaretle " +"ifade edilir. Yükleme sırasında bu işaretin ayarlanmasıyla miktarlar ters " +"çevrilecektir." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "Tutarı ters işarete çevir" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "Japon (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "Yevmiye" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "Son Güncelleyen" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "Son Güncelleme" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "Adı" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "Ekteki dosya için geçerli bir kodlama bulunamadı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "Not Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "Orijinal Tutar Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "Orijinal Para Birimi Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "İş Ortağı Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "İş Ortağı bankası" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "İş Ortağı banka hesabı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "Referans Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "" +"Altbilgi satır sayısını ayarlayın. Meta verileri son satırlara entegre eden " +"bazı csv/xlsx dosyalarında kullanılır." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "Başlık satır sayısını ayarla." + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "Eşleştirme" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "Basit Değer" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" +"Basit değer: Miktar sütunundaki tutarı kullanın\n" +"Mutlak Değer: Borç ve alacak için aynı sütunu kullanın\n" +"(mutlak değer + işaret işareti)\n" +"Kredi/Borç Farkı Sütunu: Borç ve alacak için ayrı bir sütun kullanın" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "Ekstre Aktarım Şablonu" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "Ekstre Şablon Eşleştirme" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "TXT/CSV/XLSX eşleşmesi:" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "Metin niteleyici" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "Binlik Ayıracı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "Zaman Sütunu" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "Zaman Formatı" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "Geleneksel Çince (big5)" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "İşlem ID: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +#, fuzzy +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (BOM ile)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +#, fuzzy +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (BOM ile)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "Birleşik Çince (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "Benzersiz İşlem ID Sütunu" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "Tutar türü 'Single value' olarak işaretliyse amount_column u kullan" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "" +"Tutar türü= 'Alacak/Borç Farkı Sütunu' ise amount_credit_column ve " +"amount_debit_column kullan" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "Tutar türü = 'Mutlak Değer' ise debit_credit_column değerini kullan" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" +"Tutar türü \"Mutlak değer\" ise\n" +"Bazı ekstre formatları mutlak tutar değerini kullanır ve işlemin\n" +"borç mu yoksa alacak mı olduğunu belirterek işlemin işaretini belirtir" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" +"Tutar türü \"Basit değer\" veya \"Mutlak değer\"\n" +"Günlük para birimi cinsinden işlem tutarı\n" +"Bazı ekstre formatları Alacak/Borç sütunlarını kullanır" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "Borç olup olmadığını gösteren Alacak/Borç sütununun değeri" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "Alacak olup olmadığını gösteren Alacak/Borç sütununun değeri" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "Batı (Latin-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "Batı (Windows-1252)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "" +"Böyle bir durumla karşılaştığınızda, ilk sütunun 0 olduğunu dikkate alarak " +"lütfen Sütunlar bölümünde sütun adı yerine sütun numarasını belirtin" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "Virgül (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "Nokta (.)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "Hiçbiri" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "Noktalı Virgül (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "Boşluk" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "Tab" + +#~ msgid "Last Modified on" +#~ msgstr "Son Değiştirilme" diff --git a/account_statement_import_sheet_file/i18n/zh_CN.po b/account_statement_import_sheet_file/i18n/zh_CN.po new file mode 100644 index 0000000000..4d0027f7e0 --- /dev/null +++ b/account_statement_import_sheet_file/i18n/zh_CN.po @@ -0,0 +1,620 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_bank_statement_import_txt_xlsx +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-18 06:13+0000\n" +"PO-Revision-Date: 2024-06-12 12:34+0000\n" +"Last-Translator: xtanuiha \n" +"Language-Team: none\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 4.17\n" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "%(code)s: %(filename)s" +msgstr "%(code)s: %(filename)s" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" Add the column names or column number " +"(when the file has no header).\n" +" You can concatenate multiple columns in the " +"file into the same field, indicating the\n" +" column names or numbers separated by comma." +msgstr "" +" 添加列名或列号(当文件没有标题时)。 \n" +"您可以将文件中的多个列合并到同一个字段,用逗号分隔列名或列号。" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "" +" indicate the column number in the " +"Columns section. The first column is 0." +msgstr "在列表中的列号,第一列是0。" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__absolute_value +msgid "Absolute value" +msgstr "绝对值" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Account: %s; " +msgstr "科目: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Allows to skip empty lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "Amount column" +msgstr "金额列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "Amount type" +msgstr "金额类型" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import.py:0 +#, python-format +msgid "Bad file/mapping: " +msgstr "文件/映射错误: " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance Column" +msgstr "余额列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__balance_column +msgid "Balance after transaction in journal's currency" +msgstr "交易后的原币余额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-4 +msgid "Baltic (Latin-4 / ISO 8859-4)" +msgstr "波罗的海 (Latin-4 / ISO 8859-4)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Bank Account Column" +msgstr "银行账户列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Bank Name Column" +msgstr "银行名称列" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_mapping +msgid "Bank Statement Import Sheet Mapping" +msgstr "银行对帐表格导入方案" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import_sheet_parser +msgid "Bank Statement Import Sheet Parser" +msgstr "银行对帐表格导入解析" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Bank: %s; " +msgstr "银行 %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-2 +msgid "Central European (Latin-2 / ISO 8859-2)" +msgstr "中欧 (Latin-2 / ISO 8859-2)" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_sheet_mapping_tree +msgid "Columns" +msgstr "列名" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Columns to ignore before starting to parse" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_uid +msgid "Created by" +msgstr "创建者" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__create_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__create_date +msgid "Created on" +msgstr "创建于" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Credit Value" +msgstr "贷方金额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount column" +msgstr "贷方金额列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_credit_column +msgid "Credit amount of transaction in journal's currency" +msgstr "交易中日记账币种的贷方金额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "Currency Column" +msgstr "币种列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_r +msgid "Cyrillic (KOI8-R)" +msgstr "Cyrillic (KOI8-R)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__koi8_u +msgid "Cyrillic (KOI8-U)" +msgstr "Cyrillic (KOI8-U)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1251 +msgid "Cyrillic (Windows-1251)" +msgstr "Cyrillic (Windows-1251)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Debit Value" +msgstr "借方金额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount column" +msgstr "借方金额列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_debit_column +msgid "Debit amount of transaction in journal's currency" +msgstr "交易中日记账币种的借方金额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "Debit/credit column" +msgstr "借/贷列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_decimal_sep +msgid "Decimals Separator" +msgstr "小数分隔符" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_journal__default_sheet_mapping_id +msgid "Default Sheet Mapping" +msgstr "默认表格导入方案" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__delimiter +msgid "Delimiter" +msgstr "分隔符" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__description_column +msgid "Description Column" +msgstr "描述列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__display_name +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__display_name +msgid "Display Name" +msgstr "显示名称" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__distinct_credit_debit +msgid "Distinct Credit/debit Column" +msgstr "不同的贷方/借方列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__file_encoding +msgid "Encoding" +msgstr "编码" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "File does not contain header line" +msgstr "文件不包含标题行" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "Footer lines skip count" +msgstr "忽略页脚行数" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Header lines skip count" +msgstr "忽略页首行数" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__id +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__id +msgid "ID" +msgstr "ID" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_statement_import +msgid "Import Bank Statement Files" +msgstr "导入银行对账单文件" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__currency_column +msgid "" +"In case statement is multi-currency, column to get currency of transaction " +"from" +msgstr "如果对账单包含多币别,指定获取交易币别的列名" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original currency of transaction from" +msgstr "如果对账单提供了带有自动货币转换的交易的原货币,从该列获取交易的原货币" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "" +"In case statement provides original currency for transactions with automatic " +"currency conversion, column to get original transaction amount in original " +"transaction currency from" +msgstr "" +"如果对账单提供了带有自动货币转换的交易的原货币,从该列获取原交易货币中的原交" +"易金额" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "" +"In some cases such as in credit card statements the amounts are expressed in " +"the inverse sign. By setting this flag during the upload the amounts will be " +"inverted in sign." +msgstr "" +"在某些情况下,例如在信用卡对账单中,金额的表达方式是符号相反的。在上传时设置" +"此标志,金额的符号将被反转。" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_inverse_sign +msgid "Inverse sign of amount" +msgstr "金额的符号反转" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__shift_jis +msgid "Japanese (Shift JIS)" +msgstr "日本 (Shift JIS)" + +#. module: account_statement_import_sheet_file +#: model:ir.model,name:account_statement_import_sheet_file.model_account_journal +msgid "Journal" +msgstr "资金账户" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_uid +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_uid +msgid "Last Updated by" +msgstr "最后更新者" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__write_date +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_parser__write_date +msgid "Last Updated on" +msgstr "最后更新于" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__n/a +#, python-format +msgid "N/A" +msgstr "N/A" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__name +msgid "Name" +msgstr "名称" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "No valid encoding was found for the attached file" +msgstr "未找到文件的合法编码" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__notes_column +msgid "Notes Column" +msgstr "备注列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__offset_column +msgid "Offset Column" +msgstr "" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Offsets cannot be negative" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_amount_column +msgid "Original Amount Column" +msgstr "原币金额列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__original_currency_column +msgid "Original Currency Column" +msgstr "原币种列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__partner_name_column +msgid "Partner Name Column" +msgstr "合作伙伴名称列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_name_column +msgid "Partner's bank" +msgstr "对方开户行" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__bank_account_column +msgid "Partner's bank account" +msgstr "对方银行账号" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__reference_column +msgid "Reference Column" +msgstr "参考号列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__footer_lines_skip_count +msgid "" +"Set the Footer lines number.Used in some csv/xlsx file that integrate meta " +"data inlast lines." +msgstr "设置页脚行数。用于一些在最后几行包含元数据的 csv/xlsx 文件。" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__header_lines_skip_count +msgid "Set the Header lines number." +msgstr "设置标题行数。" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import__sheet_mapping_id +msgid "Sheet mapping" +msgstr "表格方案" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__amount_type__simple_value +msgid "Simple value" +msgstr "简单值" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_type +msgid "" +"Simple value: use igned amount in amount column\n" +"Absolute Value: use a same column for debit and credit\n" +"(absolute value + indicate sign)\n" +"Distinct Credit/debit Column: use a distinct column for debit and credit" +msgstr "" +"简单值:在金额列中使用有符号的金额\n" +"绝对值:在借方和贷方使用同一列 (绝对值 + 指示符号)\n" +"不同的贷方/借方列:为借方和贷方使用不同的列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__skip_empty_lines +msgid "Skip Empty Lines" +msgstr "" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.view_account_journal_form_n43 +msgid "Statement Import Map" +msgstr "银行对账导入方案" + +#. module: account_statement_import_sheet_file +#: model:ir.actions.act_window,name:account_statement_import_sheet_file.action_statement_import_sheet_report_mappings +#: model:ir.ui.menu,name:account_statement_import_sheet_file.menu_statement_import_sheet_mapping +msgid "Statement Sheet Mappings" +msgstr "银行对账表格导入方案" + +#. module: account_statement_import_sheet_file +#: model_terms:ir.ui.view,arch_db:account_statement_import_sheet_file.account_statement_import_form +msgid "TXT/CSV/XLSX mapping:" +msgstr "TXT/CSV/XLSX 表格导入方案:" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__quotechar +msgid "Text qualifier" +msgstr "文本限定符" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__float_thousands_sep +msgid "Thousands Separator" +msgstr "千位符" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_column +msgid "Timestamp Column" +msgstr "时间戳列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__timestamp_format +msgid "Timestamp Format" +msgstr "日期格式" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__big5 +msgid "Traditional Chinese (big5)" +msgstr "繁体中文 (big5)" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py:0 +#, python-format +msgid "Transaction ID: %s; " +msgstr "交易 ID: %s; " + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16 +msgid "UTF-16" +msgstr "UTF-16" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-16-sig +msgid "UTF-16 (with BOM)" +msgstr "UTF-16 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8 +msgid "UTF-8" +msgstr "UTF-8" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__utf-8-sig +msgid "UTF-8 (with BOM)" +msgstr "UTF-8 (with BOM)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__gb18030 +msgid "Unified Chinese (gb18030)" +msgstr "简体中文 (gb18030)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,field_description:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__transaction_id_column +msgid "Unique transaction ID column" +msgstr "唯一交易ID列名" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use amount_column if you have set Amount type = 'Single value'" +msgstr "如果将金额类型设置为“简单值”,请使用金额列" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "" +"Use amount_debit_column and amount_credit_column if you have set Amount type " +"= 'Distinct Credit/debit Column'" +msgstr "如果将金额类型设置为“不同的贷方/借方列”,请使用借方金额和贷方金额列" + +#. module: account_statement_import_sheet_file +#. odoo-python +#: code:addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py:0 +#, python-format +msgid "Use debit_credit_column if you have set Amount type = 'Absolute value'" +msgstr "用于金额类型设置为“绝对值”,使用借/贷列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_credit_column +msgid "" +"Used if amount type is \"Absolute value\"\n" +"Some statement formats use absolute amount value and indicate sign\n" +"of the transaction by specifying if it was a debit or a credit one" +msgstr "" +"用于金额类型是“绝对值”\n" +"一些对账单格式使用金额绝对值,并通过指定是借方还是贷方来指示交易的正负符号" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__amount_column +msgid "" +"Used if amount type is \"Simple value\" or \"Absolute value\"\n" +"Amount of transaction in journal's currency\n" +"Some statement formats use credit/debit columns" +msgstr "" +"用于金额类型是“简单值”或“绝对值”\n" +"交易中日记账币种的金额\n" +"一些对账单格式使用贷/借列" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__credit_value +msgid "Value of debit/credit column that indicates if it's a credit" +msgstr "表示贷/借列的贷方的值" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__debit_value +msgid "Value of debit/credit column that indicates if it's a debit" +msgstr "表示贷/借列的借方的值" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__iso-8859-1 +msgid "Western (Latin-1 / ISO 8859-1)" +msgstr "西方 (Latin-1 / ISO 8859-1)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__file_encoding__windows-1252 +msgid "Western (Windows-1252)" +msgstr "Western (Windows-1252)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields,help:account_statement_import_sheet_file.field_account_statement_import_sheet_mapping__no_header +msgid "" +"When this occurs please indicate the column number in the Columns section " +"instead of the column name, considering that the first column is 0" +msgstr "当出现这种情况时,请在“列”部分中指示列序号,而不是列名,注意第一列是 0" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__comma +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__comma +msgid "comma (,)" +msgstr "逗号 (,)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__dot +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__dot +msgid "dot (.)" +msgstr "句号(.)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_decimal_sep__none +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__none +msgid "none" +msgstr "无" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote +msgid "quote (')" +msgstr "单引号 (')" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon +msgid "semicolon (;)" +msgstr "分号 (;)" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__space +msgid "space" +msgstr "空格" + +#. module: account_statement_import_sheet_file +#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__tab +msgid "tab" +msgstr "制表符" diff --git a/account_statement_import_sheet_file/models/__init__.py b/account_statement_import_sheet_file/models/__init__.py new file mode 100644 index 0000000000..bac1c3466a --- /dev/null +++ b/account_statement_import_sheet_file/models/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import account_statement_import_sheet_mapping +from . import account_journal diff --git a/account_statement_import_sheet_file/models/account_journal.py b/account_statement_import_sheet_file/models/account_journal.py new file mode 100644 index 0000000000..b6c3f86c38 --- /dev/null +++ b/account_statement_import_sheet_file/models/account_journal.py @@ -0,0 +1,18 @@ +# Copyright 2019 ForgeFlow, S.L. +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class AccountJournal(models.Model): + _inherit = "account.journal" + + default_sheet_mapping_id = fields.Many2one( + comodel_name="account.statement.import.sheet.mapping", + ) + + def _get_bank_statements_available_import_formats(self): + res = super()._get_bank_statements_available_import_formats() + res.append("TXT/CSV/XSLX") + return res diff --git a/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py b/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py new file mode 100644 index 0000000000..881c0ce6cb --- /dev/null +++ b/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py @@ -0,0 +1,262 @@ +# Copyright 2019 ForgeFlow, S.L. +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models +from odoo.exceptions import ValidationError + + +class AccountStatementImportSheetMapping(models.Model): + _name = "account.statement.import.sheet.mapping" + _description = "Bank Statement Import Sheet Mapping" + + name = fields.Char( + required=True, + ) + float_thousands_sep = fields.Selection( + string="Thousands Separator", + selection=[ + ("dot", "dot (.)"), + ("comma", "comma (,)"), + ("quote", "quote (')"), + ("none", "none"), + ], + default="dot", + ) + float_decimal_sep = fields.Selection( + string="Decimals Separator", + selection=[("dot", "dot (.)"), ("comma", "comma (,)"), ("none", "none")], + default="comma", + ) + file_encoding = fields.Selection( + string="Encoding", + selection=[ + ("utf-8", "UTF-8"), + ("utf-8-sig", "UTF-8 (with BOM)"), + ("utf-16", "UTF-16"), + ("utf-16-sig", "UTF-16 (with BOM)"), + ("windows-1252", "Western (Windows-1252)"), + ("iso-8859-1", "Western (Latin-1 / ISO 8859-1)"), + ("iso-8859-2", "Central European (Latin-2 / ISO 8859-2)"), + ("iso-8859-4", "Baltic (Latin-4 / ISO 8859-4)"), + ("big5", "Traditional Chinese (big5)"), + ("gb18030", "Unified Chinese (gb18030)"), + ("shift_jis", "Japanese (Shift JIS)"), + ("windows-1251", "Cyrillic (Windows-1251)"), + ("koi8_r", "Cyrillic (KOI8-R)"), + ("koi8_u", "Cyrillic (KOI8-U)"), + ], + default="utf-8", + ) + delimiter = fields.Selection( + selection=[ + ("dot", "dot (.)"), + ("comma", "comma (,)"), + ("semicolon", "semicolon (;)"), + ("tab", "tab"), + ("space", "space"), + ("n/a", "N/A"), + ], + default="comma", + ) + quotechar = fields.Char(string="Text qualifier", size=1, default='"') + timestamp_format = fields.Char(required=True) + no_header = fields.Boolean( + string="File does not contain header line", + help="When this occurs please indicate the column number in " + "the Columns section instead of the column name, considering " + "that the first column is 0", + ) + timestamp_column = fields.Char(required=True) + currency_column = fields.Char( + help=( + "In case statement is multi-currency, column to get currency of " + "transaction from" + ), + ) + amount_debit_column = fields.Char( + string="Debit amount column", + help="Debit amount of transaction in journal's currency", + ) + amount_credit_column = fields.Char( + string="Credit amount column", + help="Credit amount of transaction in journal's currency", + ) + amount_inverse_sign = fields.Boolean( + string="Inverse sign of amount", + help="In some cases such as in credit card statements the " + "amounts are expressed in the inverse sign. " + "By setting this flag during the upload the amounts " + "will be inverted in sign.", + ) + balance_column = fields.Char( + help="Balance after transaction in journal's currency", + ) + original_currency_column = fields.Char( + help=( + "In case statement provides original currency for transactions " + "with automatic currency conversion, column to get original " + "currency of transaction from" + ), + ) + original_amount_column = fields.Char( + help=( + "In case statement provides original currency for transactions " + "with automatic currency conversion, column to get original " + "transaction amount in original transaction currency from" + ), + ) + amount_type = fields.Selection( + selection=[ + ("simple_value", "Simple value"), + ("absolute_value", "Absolute value"), + ("distinct_credit_debit", "Distinct Credit/debit Column"), + ], + string="Amount type", + required=True, + default="simple_value", + help=( + "Simple value: use signed amount in amount column\n" + "Absolute Value: use a same column for debit and credit\n" + "(absolute value + indicate sign)\n" + "Distinct Credit/debit Column: use a distinct column for debit and credit" + ), + ) + amount_column = fields.Char( + string="Amount column", + help=( + 'Used if amount type is "Simple value" or "Absolute value"\n' + "Amount of transaction in journal's currency\n" + "Some statement formats use credit/debit columns" + ), + ) + debit_credit_column = fields.Char( + string="Debit/credit column", + help=( + 'Used if amount type is "Absolute value"\n' + "Some statement formats use absolute amount value and indicate sign\n" + "of the transaction by specifying if it was a debit or a credit one" + ), + ) + debit_value = fields.Char( + help="Value of debit/credit column that indicates if it's a debit", + default="D", + ) + credit_value = fields.Char( + help="Value of debit/credit column that indicates if it's a credit", + default="C", + ) + transaction_id_column = fields.Char( + string="Unique transaction ID column", + ) + description_column = fields.Char() + notes_column = fields.Char() + reference_column = fields.Char() + partner_name_column = fields.Char() + bank_name_column = fields.Char( + help="Partner's bank", + ) + bank_account_column = fields.Char( + help="Partner's bank account", + ) + footer_lines_skip_count = fields.Integer( + string="Footer lines skip count", + help="Set the Footer lines number." + "Used in some csv/xlsx file that integrate meta data in" + "last lines.", + default="0", + ) + header_lines_skip_count = fields.Integer( + string="Header lines skip count", + help="Set the Header lines number.", + default="0", + ) + skip_empty_lines = fields.Boolean( + default=True, + help="Allows to skip empty lines", + ) + offset_column = fields.Integer( + default=0, + help="Columns to ignore before starting to parse", + ) + + @api.constrains( + "amount_type", + "amount_column", + "debit_credit_column", + "amount_debit_column", + "amount_credit_column", + ) + def _check_amount_type(self): + for item in self: + if item.amount_type == "simple_value" and not item.amount_column: + raise ValidationError( + self.env._( + "Use amount_column if you have set Amount type = 'Single value'" + ) + ) + elif item.amount_type == "absolute_value" and not item.debit_credit_column: + raise ValidationError( + self.env._( + "Use debit_credit_column if you have set " + "Amount type = 'Absolute value'" + ) + ) + elif item.amount_type == "distinct_credit_debit" and ( + not item.amount_debit_column or not item.amount_credit_column + ): + raise ValidationError( + self.env._( + "Use amount_debit_column and amount_credit_column if you " + "have set Amount type = 'Distinct Credit/debit Column'" + ) + ) + + @api.onchange("float_thousands_sep") + def onchange_thousands_separator(self): + if "dot" == self.float_thousands_sep == self.float_decimal_sep: + self.float_decimal_sep = "comma" + elif "comma" == self.float_thousands_sep == self.float_decimal_sep: + self.float_decimal_sep = "dot" + + @api.onchange("float_decimal_sep") + def onchange_decimal_separator(self): + if "dot" == self.float_thousands_sep == self.float_decimal_sep: + self.float_thousands_sep = "comma" + elif "comma" == self.float_thousands_sep == self.float_decimal_sep: + self.float_thousands_sep = "dot" + + @api.constrains("offset_column") + def _check_columns(self): + for mapping in self: + if mapping.offset_column < 0: + raise ValidationError(self.env._("Offsets cannot be negative")) + + @api.onchange("amount_type") + def _clear_amount_columns(self): + self.amount_column = False + self.debit_credit_column = False + self.amount_debit_column = False + self.amount_credit_column = False + + def _get_float_separators(self): + self.ensure_one() + separators = { + "dot": ".", + "comma": ",", + "quote": "'", + "none": "", + } + return ( + separators[self.float_thousands_sep], + separators[self.float_decimal_sep], + ) + + @api.model + def _decode_column_delimiter_character(self, delimiter): + return ( + {"dot": ".", "comma": ",", "semicolon": ";", "tab": "\t", "space": " "} + ).get(delimiter) + + def _get_column_delimiter_character(self): + return self._decode_column_delimiter_character(self.delimiter) diff --git a/account_statement_import_sheet_file/pyproject.toml b/account_statement_import_sheet_file/pyproject.toml new file mode 100644 index 0000000000..4231d0cccb --- /dev/null +++ b/account_statement_import_sheet_file/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/account_statement_import_sheet_file/readme/CONFIGURE.md b/account_statement_import_sheet_file/readme/CONFIGURE.md new file mode 100644 index 0000000000..ab33426775 --- /dev/null +++ b/account_statement_import_sheet_file/readme/CONFIGURE.md @@ -0,0 +1,6 @@ +To create TXT/CSV/XLSX statement sheet columns mapping: + +1. Open *Invoicing \> Configuration \> Accounting \> Statement Sheet + Mappings* +2. Create mapping(s) according to your online banking software + statement format diff --git a/account_statement_import_sheet_file/readme/CONTRIBUTORS.md b/account_statement_import_sheet_file/readme/CONTRIBUTORS.md new file mode 100644 index 0000000000..3c6a7839ac --- /dev/null +++ b/account_statement_import_sheet_file/readme/CONTRIBUTORS.md @@ -0,0 +1,13 @@ +- Alexis de Lattre \<\> +- Sebastien BEAU \<\> +- Katherine Zaoral +- Tecnativa () + - Vicent Cubells + - Victor M.M. Torres + - Víctor Martínez +- ForgeFlow () + - Jordi Ballester Alomar \<\> + - Miquel Raïch Regué \<\> +- [CorporateHub](https://corporatehub.eu/) + - Alexey Pelykh \<\> +- Sebastiano Picchi diff --git a/account_statement_import_sheet_file/readme/DESCRIPTION.md b/account_statement_import_sheet_file/readme/DESCRIPTION.md new file mode 100644 index 0000000000..683b19960f --- /dev/null +++ b/account_statement_import_sheet_file/readme/DESCRIPTION.md @@ -0,0 +1,2 @@ +This module allows you to import any TXT/CSV or XLSX file in Odoo as +bank statements. diff --git a/account_statement_import_sheet_file/readme/HISTORY.md b/account_statement_import_sheet_file/readme/HISTORY.md new file mode 100644 index 0000000000..65d771b00a --- /dev/null +++ b/account_statement_import_sheet_file/readme/HISTORY.md @@ -0,0 +1,7 @@ +## 12.0.2.0.0 + +- \[BREAKING\] New mapping, please review mappings after upgrade. +- \[BREAKING\] Different bank accounts have to be used per each + currency. +- \[ADD\] Support for both Statement and Activity reports. +- \[ADD\] Separate fee and currency exchange parsing. diff --git a/account_statement_import_sheet_file/readme/USAGE.md b/account_statement_import_sheet_file/readme/USAGE.md new file mode 100644 index 0000000000..78ce1ae7c2 --- /dev/null +++ b/account_statement_import_sheet_file/readme/USAGE.md @@ -0,0 +1,5 @@ +To use this module, you need to: + +1. Get statement in TXT/CSV or XLSX from your online banking software +2. Go to Odoo and and import the statement file, selecting + corresponding format diff --git a/account_statement_import_sheet_file/security/ir.model.access.csv b/account_statement_import_sheet_file/security/ir.model.access.csv new file mode 100644 index 0000000000..be92c3a142 --- /dev/null +++ b/account_statement_import_sheet_file/security/ir.model.access.csv @@ -0,0 +1,4 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +access_account_statement_import_sheet_mapping_manager,account.statement.import.sheet.mapping:account.group_account_manager,model_account_statement_import_sheet_mapping,account.group_account_manager,1,1,1,1 +access_account_statement_import_sheet_mapping_user,account.statement.import.sheet.mapping:account.group_account_user,model_account_statement_import_sheet_mapping,account.group_account_user,1,0,0,0 +access_account_statement_import_sheet_parser,account.statement.import.sheet.parser:account.group_account_user,model_account_statement_import_sheet_parser,account.group_account_user,1,1,1,1 diff --git a/account_statement_import_sheet_file/static/description/icon.png b/account_statement_import_sheet_file/static/description/icon.png new file mode 100644 index 0000000000..3a0328b516 Binary files /dev/null and b/account_statement_import_sheet_file/static/description/icon.png differ diff --git a/account_statement_import_sheet_file/static/description/index.html b/account_statement_import_sheet_file/static/description/index.html new file mode 100644 index 0000000000..89c8b785ae --- /dev/null +++ b/account_statement_import_sheet_file/static/description/index.html @@ -0,0 +1,488 @@ + + + + + +README.rst + + + +
+ + + +Odoo Community Association + +
+

Bank Statement TXT/CSV/XLSX Import

+ +

Beta License: AGPL-3 OCA/bank-statement-import Translate me on Weblate Try me on Runboat

+

This module allows you to import any TXT/CSV or XLSX file in Odoo as +bank statements.

+

Table of contents

+ +
+

Configuration

+

To create TXT/CSV/XLSX statement sheet columns mapping:

+
    +
  1. Open Invoicing > Configuration > Accounting > Statement Sheet +Mappings
  2. +
  3. Create mapping(s) according to your online banking software statement +format
  4. +
+
+
+

Usage

+

To use this module, you need to:

+
    +
  1. Get statement in TXT/CSV or XLSX from your online banking software
  2. +
  3. Go to Odoo and and import the statement file, selecting corresponding +format
  4. +
+
+
+

Changelog

+
+

12.0.2.0.0

+
    +
  • [BREAKING] New mapping, please review mappings after upgrade.
  • +
  • [BREAKING] Different bank accounts have to be used per each currency.
  • +
  • [ADD] Support for both Statement and Activity reports.
  • +
  • [ADD] Separate fee and currency exchange parsing.
  • +
+
+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ForgeFlow
  • +
  • CorporateHub
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+ +Odoo Community Association + +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

Current maintainer:

+

alexey-pelykh

+

This module is part of the OCA/bank-statement-import project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+
+ + diff --git a/account_statement_import_sheet_file/tests/__init__.py b/account_statement_import_sheet_file/tests/__init__.py new file mode 100644 index 0000000000..87f2afc5f8 --- /dev/null +++ b/account_statement_import_sheet_file/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import test_account_statement_import_sheet_file diff --git a/account_statement_import_sheet_file/tests/fixtures/balance.csv b/account_statement_import_sheet_file/tests/fixtures/balance.csv new file mode 100644 index 0000000000..c6a000f0ca --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/balance.csv @@ -0,0 +1,3 @@ +"Date","Label","Amount","Balance","Partner Name","Bank Account" +"12/15/2018","Your best supplier","-33.50","-23.50","John Doe","123456789" +"12/15/2018","Your payment","1,533.50","1,510.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/debit_credit.csv b/account_statement_import_sheet_file/tests/fixtures/debit_credit.csv new file mode 100644 index 0000000000..936e32aa84 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/debit_credit.csv @@ -0,0 +1,3 @@ +"Date","Label","Amount","D/C","Balance","Partner Name","Bank Account" +"12/15/2018","Your best supplier","33.50","D","-23.50","John Doe","123456789" +"12/15/2018","Your payment","-1,533.50","C","1,510.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/debit_credit_amount.csv b/account_statement_import_sheet_file/tests/fixtures/debit_credit_amount.csv new file mode 100644 index 0000000000..f7e8e75af6 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/debit_credit_amount.csv @@ -0,0 +1,5 @@ +"Date","Label","Debit","Credit","Balance","Partner Name","Bank Account" +"12/15/2018","Credit 20.00","0.00","20.00","-10.00","John Doe","123456789" +"12/15/2018","Credit 13.50","0.00","-13.50","-23.50","John Doe","123456789" +"12/15/2018","Debit 33.50","-33.50","0.00","10.00","Azure Interior","" +"12/15/2018","Debit 1500","1,500.00","0.00","1,510.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/empty_lines_statement.csv b/account_statement_import_sheet_file/tests/fixtures/empty_lines_statement.csv new file mode 100644 index 0000000000..c5b7aded45 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/empty_lines_statement.csv @@ -0,0 +1,5 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" +"02/25/2018","AAAOOO 1","EUR","-33.50","0.0","John Doe","123456789" +"02/26/2018","AAAOOO 2","EUR","1,525.00","1,000.00","Azure Interior","" +,,,,,, +"02/27/2018","AAAOOO 3","EUR","800.00","800.00","Azure Interior","123456789" diff --git a/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.csv b/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.csv new file mode 100644 index 0000000000..696c59bab1 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.csv @@ -0,0 +1 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" diff --git a/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.xlsx b/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.xlsx new file mode 100644 index 0000000000..5ca47652c2 Binary files /dev/null and b/account_statement_import_sheet_file/tests/fixtures/empty_statement_en.xlsx differ diff --git a/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.csv b/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.csv new file mode 100644 index 0000000000..0b38621283 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.csv @@ -0,0 +1,10 @@ +Bank code : 1001010101,Agency Code : 10000,Download start date : 01/04/2020,Download end date : 02/04/2020,, +Account Number : 08088804068,Account Name : Account Owner,: EUR,,, +,,,,, +Balance at end of period,,,,"+31070,11", +Date,Operation Number,Label,Debit,Credit,Detail +01/04/20,UNIQUE OP 1,LABEL 1,"-50,00",,DETAILS 1 +01/04/20,UNIQUE OP 2,LABEL 2,"-100,00",,CLIENTS X +02/04/20,UNIQUE OP 3,LABEL 3,"-80,68",,DETAILS 2 +02/04/20,UNIQUE OP 4,LABEL 4,,"1300,00",DETAILS 3 +Balance at start of period,,,,"+30000,77", diff --git a/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.xlsx b/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.xlsx new file mode 100644 index 0000000000..c7ae2b92e9 Binary files /dev/null and b/account_statement_import_sheet_file/tests/fixtures/meta_data_separated_credit_debit.xlsx differ diff --git a/account_statement_import_sheet_file/tests/fixtures/multi_currency.csv b/account_statement_import_sheet_file/tests/fixtures/multi_currency.csv new file mode 100644 index 0000000000..c64bd18084 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/multi_currency.csv @@ -0,0 +1,3 @@ +"Date","Label","Currency","Amount","Partner Name","Bank Account" +"12/15/2018","Your best supplier","USD","-33.50","John Doe","123456789" +"12/15/2018","Your payment","EUR","1,525.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/original_currency.csv b/account_statement_import_sheet_file/tests/fixtures/original_currency.csv new file mode 100644 index 0000000000..04731cfc7f --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/original_currency.csv @@ -0,0 +1,2 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" +"12/15/2018","Your payment","EUR","1,525.00","-1,000.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/original_currency_empty.csv b/account_statement_import_sheet_file/tests/fixtures/original_currency_empty.csv new file mode 100644 index 0000000000..6db95ba0f8 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/original_currency_empty.csv @@ -0,0 +1,2 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" +"12/15/2018","Your payment",,"1,525.00",,"Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/original_currency_no_header.csv b/account_statement_import_sheet_file/tests/fixtures/original_currency_no_header.csv new file mode 100644 index 0000000000..4e91582fe7 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/original_currency_no_header.csv @@ -0,0 +1 @@ +"12/15/2018","Your payment","EUR","1,525.00","-1,000.00","Azure Interior","","INV0001" diff --git a/account_statement_import_sheet_file/tests/fixtures/sample_statement_credit_card_inverse_sign_en.csv b/account_statement_import_sheet_file/tests/fixtures/sample_statement_credit_card_inverse_sign_en.csv new file mode 100644 index 0000000000..282e5f9a3c --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/sample_statement_credit_card_inverse_sign_en.csv @@ -0,0 +1,3 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" +"12/15/2018","LABEL 1","USD","33.50","0.0","John Doe","123456789" +"12/15/2018","LABEL 2","EUR","-1,525.00","-1,000.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.csv b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.csv new file mode 100644 index 0000000000..dc214d7027 --- /dev/null +++ b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.csv @@ -0,0 +1,3 @@ +"Date","Label","Currency","Amount","Amount Currency","Partner Name","Bank Account" +"12/15/2018","Your best supplier on 12/15/2018","USD","-33.50","0.0","John Doe","123456789" +"12/15/2018","Your payment on 12/15/2018","EUR","1,525.00","1,000.00","Azure Interior","" diff --git a/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.xlsx b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.xlsx new file mode 100644 index 0000000000..6f431a6213 Binary files /dev/null and b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.xlsx differ diff --git a/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx new file mode 100644 index 0000000000..7b9a2193eb Binary files /dev/null and b/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx differ diff --git a/account_statement_import_sheet_file/tests/fixtures/sample_statement_offsets.xlsx b/account_statement_import_sheet_file/tests/fixtures/sample_statement_offsets.xlsx new file mode 100644 index 0000000000..2cfc77a8a3 Binary files /dev/null and b/account_statement_import_sheet_file/tests/fixtures/sample_statement_offsets.xlsx differ diff --git a/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py b/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py new file mode 100644 index 0000000000..5199aef0f1 --- /dev/null +++ b/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py @@ -0,0 +1,773 @@ +# Copyright 2019 ForgeFlow, S.L. +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from base64 import b64encode +from decimal import Decimal +from os import path +from unittest.mock import Mock + +from odoo import fields +from odoo.exceptions import UserError +from odoo.tools import float_round + +from odoo.addons.base.tests.common import BaseCommon + + +class TestAccountStatementImportSheetFile(BaseCommon): + @classmethod + def setUpClass(cls): + super().setUpClass() + + cls.now = fields.Datetime.now() + cls.currency_eur = cls.env.ref("base.EUR") + cls.currency_usd = cls.env.ref("base.USD") + cls.currency_usd.active = True + # Make sure the currency of the company is USD, as this not always happens + # To be removed in V17: https://github.com/odoo/odoo/pull/107113 + # cls.company = cls.env.company + # cls.env.cr.execute( + # "UPDATE res_company SET currency_id = %s WHERE id = %s", + # (cls.env.ref("base.USD").id, cls.company.id), + # ) + # Activate EUR for unit test, by default is not active + cls.currency_eur.active = True + cls.sample_statement_map = cls.env.ref( + "account_statement_import_sheet_file.sample_statement_map" + ) + cls.AccountJournal = cls.env["account.journal"] + cls.AccountBankStatement = cls.env["account.bank.statement"] + cls.AccountStatementImport = cls.env["account.statement.import"] + cls.AccountStatementImportSheetMapping = cls.env[ + "account.statement.import.sheet.mapping" + ] + cls.AccountStatementImportWizard = cls.env["account.statement.import"] + cls.suspense_account = cls.env["account.account"].create( + { + "code": "987654", + "name": "Suspense Account", + "account_type": "asset_current", + } + ) + cls.parser = cls.env["account.statement.import.sheet.parser"] + # Mock the mapping object to return predefined separators + cls.mock_mapping_comma_dot = Mock() + cls.mock_mapping_comma_dot._get_float_separators.return_value = (",", ".") + cls.mock_mapping_dot_comma = Mock() + cls.mock_mapping_dot_comma._get_float_separators.return_value = (".", ",") + + def _data_file(self, filename, encoding=None): + mode = "rt" if encoding else "rb" + with open(path.join(path.dirname(__file__), filename), mode) as file: + data = file.read() + if encoding: + data = data.encode(encoding) + return b64encode(data) + + def test_import_csv_file(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/sample_statement_en.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/sample_statement_en.csv", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + + def test_import_empty_csv_file(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/empty_statement_en.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/empty_statement_en.csv", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + with self.assertRaises(UserError): + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 0) + + def test_import_xlsx_file(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/sample_statement_en.xlsx") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/sample_statement_en.xlsx", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + + def test_import_empty_xlsx_file(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/empty_statement_en.xlsx") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/empty_statement_en.xlsx", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + with self.assertRaises(UserError): + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 0) + + def test_original_currency(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/original_currency.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/original_currency.csv", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 1) + + line = statement.line_ids + self.assertEqual(line.currency_id, self.currency_usd) + self.assertEqual(line.amount, 1525.0) + self.assertEqual(line.foreign_currency_id, self.currency_eur) + line_amount_currency = float_round(line.amount_currency, precision_digits=1) + self.assertEqual(line_amount_currency, 1000.0) + + def test_original_currency_no_header(self): + no_header_statement_map = self.AccountStatementImportSheetMapping.create( + { + "name": "Sample Statement", + "float_thousands_sep": "comma", + "float_decimal_sep": "dot", + "header_lines_skip_count": 0, + "delimiter": "comma", + "quotechar": '"', + "timestamp_format": "%m/%d/%Y", + "no_header": True, + "timestamp_column": "0", + "amount_column": "3", + "original_currency_column": "2", + "original_amount_column": "4", + "description_column": "1,7", + "partner_name_column": "5", + "bank_account_column": "6", + } + ) + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/original_currency_no_header.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/original_currency.csv", + "statement_file": data, + "sheet_mapping_id": no_header_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 1) + + line = statement.line_ids + self.assertEqual(line.currency_id, self.currency_usd) + self.assertEqual(line.foreign_currency_id, self.currency_eur) + self.assertEqual(line.amount_currency, 1000.0) + self.assertEqual(line.payment_ref, "Your payment INV0001") + + def test_original_currency_empty(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/original_currency_empty.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/original_currency_empty.csv", + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 1) + + line = statement.line_ids + self.assertFalse(line.foreign_currency_id) + self.assertEqual(line.amount_currency, 0.0) + + def test_multi_currency(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "currency_column": "Currency", + "original_currency_column": None, + "original_amount_column": None, + } + ) + data = self._data_file("fixtures/multi_currency.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/multi_currency.csv", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 1) + + line = statement.line_ids + self.assertFalse(line.foreign_currency_id) + self.assertEqual(line.amount, -33.5) + + def test_balance(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "balance_column": "Balance", + "original_currency_column": None, + "original_amount_column": None, + } + ) + data = self._data_file("fixtures/balance.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/balance.csv", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + self.assertEqual(statement.balance_start, 10.0) + self.assertEqual(statement.balance_end_real, 1510.0) + self.assertEqual(statement.balance_end, 1510.0) + + def test_debit_credit(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "balance_column": "Balance", + "original_currency_column": None, + "original_amount_column": None, + "debit_credit_column": "D/C", + "debit_value": "D", + "credit_value": "C", + } + ) + data = self._data_file("fixtures/debit_credit.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/debit_credit.csv", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + self.assertEqual(statement.balance_start, 10.0) + self.assertEqual(statement.balance_end_real, 1510.0) + self.assertEqual(statement.balance_end, 1510.0) + + def test_debit_credit_amount(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "amount_type": "distinct_credit_debit", + "amount_debit_column": "Debit", + "amount_credit_column": "Credit", + "balance_column": "Balance", + "amount_column": None, + "original_currency_column": None, + "original_amount_column": None, + } + ) + data = self._data_file("fixtures/debit_credit_amount.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/debit_credit_amount.csv", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 4) + self.assertEqual(statement.balance_start, 10.0) + self.assertEqual(statement.balance_end_real, 1510.0) + self.assertEqual(statement.balance_end, 1510.0) + + def test_metadata_separated_debit_credit_csv(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "footer_lines_skip_count": 1, + "header_lines_skip_count": 5, + "amount_column": None, + "partner_name_column": None, + "bank_account_column": None, + "float_thousands_sep": "none", + "float_decimal_sep": "comma", + "timestamp_format": "%m/%d/%y", + "original_currency_column": None, + "original_amount_column": None, + "amount_type": "distinct_credit_debit", + "amount_debit_column": "Debit", + "amount_credit_column": "Credit", + } + ) + data = self._data_file("fixtures/meta_data_separated_credit_debit.csv", "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/meta_data_separated_credit_debit.csv", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + journal_id=journal.id, + account_bank_statement_import_txt_xlsx_test=True, + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 4) + line1 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 1") + line4 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 4") + self.assertEqual(line1.amount, 50) + self.assertEqual(line4.amount, -1300) + + def test_metadata_separated_debit_credit_xlsx(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + statement_map = self.sample_statement_map.copy( + { + "footer_lines_skip_count": 1, + "header_lines_skip_count": 5, + "amount_column": None, + "partner_name_column": None, + "bank_account_column": None, + "float_thousands_sep": "none", + "float_decimal_sep": "comma", + "timestamp_format": "%m/%d/%y", + "original_currency_column": None, + "original_amount_column": None, + "amount_type": "distinct_credit_debit", + "amount_debit_column": "Debit", + "amount_credit_column": "Credit", + } + ) + data = self._data_file("fixtures/meta_data_separated_credit_debit.xlsx") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/meta_data_separated_credit_debit.xlsx", + "statement_file": data, + "sheet_mapping_id": statement_map.id, + } + ) + wizard.with_context( + journal_id=journal.id, + account_bank_statement_import_txt_xlsx_test=True, + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 4) + line1 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 1") + line4 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 4") + self.assertEqual(line1.amount, 50) + self.assertEqual(line4.amount, -1300) + + def test_amount_inverse_sign(self): + self.sample_statement_map.amount_inverse_sign = True + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + filename = "fixtures/sample_statement_credit_card_inverse_sign_en.csv" + data = self._data_file(filename, "utf-8") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": filename, + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + line1 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 1") + self.assertEqual(line1.amount, -33.50) + line2 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 2") + self.assertEqual(line2.amount, 1525.00) + self.assertEqual(line2.amount_currency, 1000.00) + + def test_import_xlsx_empty_values(self): + sample_statement_map_empty_values = ( + self.AccountStatementImportSheetMapping.create( + { + "name": "Sample Statement with empty values", + "amount_type": "distinct_credit_debit", + "float_decimal_sep": "comma", + "delimiter": "n/a", + "no_header": 0, + "footer_lines_skip_count": 1, + "amount_inverse_sign": 0, + "header_lines_skip_count": 1, + "quotechar": '"', + "float_thousands_sep": "dot", + "reference_column": "REF", + "description_column": "DESCRIPTION", + "amount_credit_column": "DEBIT", + "amount_debit_column": "CREDIT", + "balance_column": "BALANCE", + "timestamp_format": "%d/%m/%Y", + "timestamp_column": "DATE", + } + ) + ) + journal = self.AccountJournal.create( + { + "name": "Bank 2", + "type": "bank", + "code": "BAN2", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + data = self._data_file("fixtures/sample_statement_en_empty_values.xlsx") + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": "fixtures/sample_statement_en_empty_values.xlsx", + "statement_file": data, + "sheet_mapping_id": sample_statement_map_empty_values.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 3) + + def test_parse_decimal(self): + # Define a series of test cases + test_cases = [ + ( + "1,234.56", + 1234.56, + self.mock_mapping_comma_dot, + ), # standard case with thousands separator + ( + "1,234,567.89", + 1234567.89, + self.mock_mapping_comma_dot, + ), # multiple thousands separators + ( + "-1,234.56", + -1234.56, + self.mock_mapping_comma_dot, + ), # negative value + ( + "$1,234.56", + 1234.56, + self.mock_mapping_comma_dot, + ), # prefixed with currency symbol + ( + "1,234.56 USD", + 1234.56, + self.mock_mapping_comma_dot, + ), # suffixed with currency code + ( + " 1,234.56 ", + 1234.56, + self.mock_mapping_comma_dot, + ), # leading and trailing spaces + ( + "not a number", + 0, + self.mock_mapping_comma_dot, + ), # non-numeric input + (" ", 0, self.mock_mapping_comma_dot), # empty string + ("", 0, self.mock_mapping_comma_dot), # empty space + ("USD", 0, self.mock_mapping_comma_dot), # empty dolar + ( + "12,34.56", + 1234.56, + self.mock_mapping_comma_dot, + ), # unusual thousand separator placement + ( + "1234,567.89", + 1234567.89, + self.mock_mapping_comma_dot, + ), # missing one separator + ( + "1234.567,89", + 1234567.89, + self.mock_mapping_dot_comma, + ), # inverted separators + ] + + for value, expected, mock_mapping in test_cases: + with self.subTest(value=value): + result = self.parser._parse_decimal(value, mock_mapping) + self.assertEqual(result, expected, f"Failed for value: {value}") + + def test_decimal_and_float_inputs(self): + # Test direct Decimal and float inputs + self.assertEqual( + self.parser._parse_decimal(-1234.56, self.mock_mapping_comma_dot), + -1234.56, + ) + self.assertEqual( + self.parser._parse_decimal(1234.56, self.mock_mapping_comma_dot), + 1234.56, + ) + self.assertEqual( + self.parser._parse_decimal( + Decimal("-1234.56"), self.mock_mapping_comma_dot + ), + -1234.56, + ) + self.assertEqual( + self.parser._parse_decimal(Decimal("1234.56"), self.mock_mapping_comma_dot), + 1234.56, + ) + + def test_offsets(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + file_name = "fixtures/sample_statement_offsets.xlsx" + data = self._data_file(file_name) + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": file_name, + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + with self.assertRaises(UserError): + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement_map_offsets = self.sample_statement_map.copy( + { + "offset_column": 1, + "header_lines_skip_count": 3, + } + ) + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": file_name, + "statement_file": data, + "sheet_mapping_id": statement_map_offsets.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 2) + self.assertEqual(statement.balance_start, 0.0) + self.assertEqual(statement.balance_end_real, 1491.5) + self.assertEqual(statement.balance_end, 1491.5) + + def test_skip_empty_lines(self): + journal = self.AccountJournal.create( + { + "name": "Bank", + "type": "bank", + "code": "BANK", + "currency_id": self.currency_usd.id, + "suspense_account_id": self.suspense_account.id, + } + ) + file_name = "fixtures/empty_lines_statement.csv" + data = self._data_file(file_name, "utf-8") + statement_map_empty_line = self.sample_statement_map.copy( + { + "skip_empty_lines": False, + } + ) + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": file_name, + "statement_file": data, + "sheet_mapping_id": statement_map_empty_line.id, + } + ) + with self.assertRaises(UserError): + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create( + { + "statement_filename": file_name, + "statement_file": data, + "sheet_mapping_id": self.sample_statement_map.id, + } + ) + wizard.with_context( + account_statement_import_sheet_file_test=True + ).import_file_button() + statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)]) + self.assertEqual(len(statement), 1) + self.assertEqual(len(statement.line_ids), 3) + self.assertEqual(statement.balance_start, 0.0) + self.assertEqual(statement.balance_end_real, 2291.5) + self.assertEqual(statement.balance_end, 2291.5) diff --git a/account_statement_import_sheet_file/views/account_journal_views.xml b/account_statement_import_sheet_file/views/account_journal_views.xml new file mode 100644 index 0000000000..3053d13b85 --- /dev/null +++ b/account_statement_import_sheet_file/views/account_journal_views.xml @@ -0,0 +1,14 @@ + + + + account.journal + + + + + + + + + + diff --git a/account_statement_import_sheet_file/views/account_statement_import.xml b/account_statement_import_sheet_file/views/account_statement_import.xml new file mode 100644 index 0000000000..f9697c3ca8 --- /dev/null +++ b/account_statement_import_sheet_file/views/account_statement_import.xml @@ -0,0 +1,23 @@ + + + + + account.statement.import + account.statement.import + + + +
  • + TXT/CSV/XLSX mapping: +
  • +
    +
    +
    +
    diff --git a/account_statement_import_sheet_file/views/account_statement_import_sheet_mapping.xml b/account_statement_import_sheet_file/views/account_statement_import_sheet_mapping.xml new file mode 100644 index 0000000000..05f4c153d9 --- /dev/null +++ b/account_statement_import_sheet_file/views/account_statement_import_sheet_mapping.xml @@ -0,0 +1,130 @@ + + + + + account.statement.import.sheet.mapping.form + account.statement.import.sheet.mapping + + + + + + + + account.statement.import.sheet.mapping.tree + account.statement.import.sheet.mapping + +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    + + Statement Sheet Mappings + account.statement.import.sheet.mapping + list,form + + +
    diff --git a/account_statement_import_sheet_file/wizard/__init__.py b/account_statement_import_sheet_file/wizard/__init__.py new file mode 100644 index 0000000000..9cbc829d0c --- /dev/null +++ b/account_statement_import_sheet_file/wizard/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import account_statement_import_sheet_parser +from . import account_statement_import diff --git a/account_statement_import_sheet_file/wizard/account_statement_import.py b/account_statement_import_sheet_file/wizard/account_statement_import.py new file mode 100644 index 0000000000..3aa8ebff7a --- /dev/null +++ b/account_statement_import_sheet_file/wizard/account_statement_import.py @@ -0,0 +1,51 @@ +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +import logging + +from odoo import fields, models +from odoo.exceptions import UserError + +_logger = logging.getLogger(__name__) + + +class AccountStatementImport(models.TransientModel): + _inherit = "account.statement.import" + + def _get_default_mapping_id(self): + return ( + self.env["account.journal"] + .browse(self.env.context.get("journal_id")) + .default_sheet_mapping_id + ) + + sheet_mapping_id = fields.Many2one( + string="Sheet mapping", + comodel_name="account.statement.import.sheet.mapping", + default=lambda self: self._get_default_mapping_id(), + ) + + def _parse_file(self, data_file): + self.ensure_one() + if self.sheet_mapping_id: + try: + Parser = self.env["account.statement.import.sheet.parser"] + return Parser.parse( + data_file, self.sheet_mapping_id, self.statement_filename + ) + except BaseException as exc: + if self.env.context.get("account_statement_import_sheet_file_test"): + return + _logger.warning("Sheet parser error", exc_info=True) + raise UserError(self.env._("Bad file/mapping: ") + str(exc)) from exc + return super()._parse_file(data_file) + + def _create_bank_statements(self, stmts_vals, result): + """Set balance_end_real if not already provided by the file.""" + res = super()._create_bank_statements(stmts_vals, result) + statements = self.env["account.bank.statement"].browse(result["statement_ids"]) + for statement in statements: + if not statement.balance_end_real: + amount = sum(statement.line_ids.mapped("amount")) + statement.balance_end_real = statement.balance_start + amount + return res diff --git a/account_statement_import_sheet_file/wizard/account_statement_import_sheet_parser.py b/account_statement_import_sheet_file/wizard/account_statement_import_sheet_parser.py new file mode 100644 index 0000000000..33f20ebd92 --- /dev/null +++ b/account_statement_import_sheet_file/wizard/account_statement_import_sheet_parser.py @@ -0,0 +1,563 @@ +# Copyright 2019 ForgeFlow, S.L. +# Copyright 2020 CorporateHub (https://corporatehub.eu) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +import itertools +import logging +import math +import re +from collections.abc import Iterable +from datetime import datetime +from decimal import Decimal +from io import BytesIO, StringIO +from os import path + +import openpyxl + +from odoo import api, models +from odoo.exceptions import UserError + +_logger = logging.getLogger(__name__) + +try: + from csv import reader + + import xlrd + from xlrd.xldate import xldate_as_datetime +except (OSError, ImportError) as err: # pragma: no cover + _logger.error(err) + +try: + import chardet +except ImportError: + _logger.warning( + "chardet library not found, please install it " + "from http://pypi.python.org/pypi/chardet" + ) + + +class AccountStatementImportSheetParser(models.TransientModel): + _name = "account.statement.import.sheet.parser" + _description = "Bank Statement Import Sheet Parser" + + @api.model + def parse_header(self, csv_or_xlsx, mapping): + if mapping.no_header: + return [] + header_line = mapping.header_lines_skip_count + # prevent negative indexes + if header_line > 0: + header_line -= 1 + if isinstance(csv_or_xlsx, tuple): + sheet = csv_or_xlsx[1] + # Check if it's xlrd (old Excel format) + if isinstance(sheet, xlrd.sheet.Sheet): + header = [str(value).strip() for value in sheet.row_values(header_line)] + else: + # It's openpyxl (new Excel format) + # iter_rows is 1-indexed, so we need to add 1 + rows = list( + sheet.iter_rows( + min_row=header_line + 1, + max_row=header_line + 1, + values_only=True, + ) + ) + if rows: + header = [ + str(value).strip() if value is not None else "" + for value in rows[0] + ] + else: + header = [] + else: + [next(csv_or_xlsx) for _i in range(header_line)] + header = [value.strip() for value in next(csv_or_xlsx)] + if mapping.offset_column: + header = header[mapping.offset_column :] + return header + + @api.model + def parse(self, data_file, mapping, filename): + journal = self.env["account.journal"].browse(self.env.context.get("journal_id")) + currency_code = (journal.currency_id or journal.company_id.currency_id).name + account_number = journal.bank_account_id.acc_number + + lines = self._parse_lines(mapping, data_file, currency_code) + if not lines: + return currency_code, account_number, [{"transactions": []}] + + lines = list(sorted(lines, key=lambda line: line["timestamp"])) + first_line = lines[0] + last_line = lines[-1] + data = { + "date": first_line["timestamp"].date(), + "name": self.env._( + "%(code)s: %(filename)s", + code=journal.code, + filename=path.basename(filename), + ), + } + + if mapping.balance_column: + balance_start = first_line["balance"] + balance_start -= first_line["amount"] + balance_end = last_line["balance"] + data.update( + { + "balance_start": balance_start, + "balance_end_real": balance_end, + } + ) + transactions = list( + itertools.chain.from_iterable( + map(lambda line: self._convert_line_to_transactions(line), lines) + ) + ) + data.update({"transactions": transactions}) + + return currency_code, account_number, [data] + + def _get_column_indexes(self, header, column_name, mapping): + column_indexes = [] + if ( + mapping[column_name] + and isinstance(mapping[column_name], Iterable) + and "," in mapping[column_name] + ): + # We have to concatenate the values + column_names_or_indexes = mapping[column_name].split(",") + else: + column_names_or_indexes = [mapping[column_name]] + for column_name_or_index in column_names_or_indexes: + if not column_name_or_index: + continue + column_index = None + if mapping.no_header: + try: + column_index = int(column_name_or_index) + # pylint: disable=except-pass + except Exception: + pass + if column_index is not None: + column_indexes.append(column_index) + else: + if column_name_or_index: + # Try exact match first + if column_name_or_index in header: + column_indexes.append(header.index(column_name_or_index)) + else: + # Try case-insensitive match + header_lower = [h.lower() for h in header] + column_name_lower = column_name_or_index.lower() + if column_name_lower in header_lower: + column_indexes.append(header_lower.index(column_name_lower)) + else: + # If not found, raise the original error + column_indexes.append(header.index(column_name_or_index)) + return column_indexes + + def _get_column_names(self): + return [ + "timestamp_column", + "currency_column", + "amount_column", + "amount_debit_column", + "amount_credit_column", + "balance_column", + "original_currency_column", + "original_amount_column", + "debit_credit_column", + "transaction_id_column", + "description_column", + "notes_column", + "reference_column", + "partner_name_column", + "bank_name_column", + "bank_account_column", + ] + + def _parse_lines(self, mapping, data_file, currency_code): + columns = dict() + csv_or_xlsx = None + try: + workbook = xlrd.open_workbook( + file_contents=data_file, + encoding_override=( + mapping.file_encoding if mapping.file_encoding else None + ), + ) + sheet = workbook.sheet_by_index(0) + csv_or_xlsx = (workbook, sheet) + except Exception: + # Si falla, intentar abrir como XLSX (nuevo formato) + try: + workbook = openpyxl.load_workbook( + filename=BytesIO(data_file), + read_only=True, + data_only=True, + ) + sheet = workbook.active + csv_or_xlsx = (workbook, sheet) + except Exception: + # Si también falla, asumir que es CSV + csv_options = {} + csv_delimiter = mapping._get_column_delimiter_character() + if csv_delimiter: + csv_options["delimiter"] = csv_delimiter + if mapping.quotechar: + csv_options["quotechar"] = mapping.quotechar + try: + decoded_file = data_file.decode(mapping.file_encoding or "utf-8") + except UnicodeDecodeError: + detected_encoding = chardet.detect(data_file).get("encoding", False) + if not detected_encoding: + raise UserError( + self.env._( + "No valid encoding was found for the attached file" + ) + ) from None + decoded_file = data_file.decode(detected_encoding) + csv_or_xlsx = reader(StringIO(decoded_file), **csv_options) + + # Procesar el header + header = self.parse_header(csv_or_xlsx, mapping) + + for column_name in self._get_column_names(): + columns[column_name] = self._get_column_indexes( + header, column_name, mapping + ) + + data = csv_or_xlsx, data_file + return self._parse_rows(mapping, currency_code, data, columns) + + def _get_values_from_column(self, values, columns, column_name): + indexes = columns[column_name] + content_l = [] + max_index = len(values) - 1 + for index in indexes: + if isinstance(index, int): + if index <= max_index: + content_l.append(values[index]) + else: + if index in values: + content_l.append(values[index]) + if all(isinstance(content, str) for content in content_l): + return " ".join(content_l) + elif any(isinstance(content, int) for content in content_l): + # Convert all content to string and join when we have integers + return " ".join(str(content) for content in content_l) + else: + # Fallback to first content for other mixed types + return content_l[0] + + def _parse_rows(self, mapping, currency_code, data, columns): # noqa: C901 + csv_or_xlsx, data_file = data + + # Get the numbers of rows of the file + if isinstance(csv_or_xlsx, tuple): + book = csv_or_xlsx[0] + sheet = csv_or_xlsx[1] + numrows = ( + csv_or_xlsx[1].nrows + if isinstance(sheet, xlrd.sheet.Sheet) + else sheet.max_row + ) + else: + numrows = len(str(data_file.strip()).split("\\n")) + + label_line = mapping.header_lines_skip_count + footer_line = numrows - mapping.footer_lines_skip_count + + if isinstance(csv_or_xlsx, tuple): + if isinstance(sheet, xlrd.sheet.Sheet): + rows = range(label_line, footer_line) + else: + rows = sheet.iter_rows( + min_row=label_line + 1, + max_row=footer_line, + values_only=False, + ) + else: + rows = csv_or_xlsx + + lines = [] + for index, row in enumerate(rows, label_line): + if isinstance(csv_or_xlsx, tuple): + values = [] + if isinstance(sheet, xlrd.sheet.Sheet): + row_len = sheet.row_len(index) + for col_index in range(mapping.offset_column, row_len): + cell_type = sheet.cell_type(index, col_index) + cell_value = sheet.cell_value(index, col_index) + if cell_type == xlrd.XL_CELL_DATE: + cell_value = xldate_as_datetime(cell_value, book.datemode) + values.append(cell_value) + else: + for cell in row[mapping.offset_column :]: + cell_value = cell.value + if isinstance(cell_value, datetime): + # La fecha la transformo al formato que espera el CSV + cell_value = cell_value.strftime(mapping.timestamp_format) + values.append(str(cell_value) if cell_value is not None else "") + + else: + if index >= footer_line: + continue + values = list(row) + if mapping.skip_empty_lines and not any(values): + continue + + timestamp = self._get_values_from_column( + values, columns, "timestamp_column" + ) + currency = ( + self._get_values_from_column(values, columns, "currency_column") + if columns["currency_column"] + else currency_code + ) + + def _decimal(column_name, values): + if columns[column_name]: + return self._parse_decimal( + self._get_values_from_column(values, columns, column_name), + mapping, + ) + + if mapping.amount_type == "distinct_credit_debit": + amount = abs(_decimal("amount_debit_column", values) or 0) + if not amount: + amount = -abs(_decimal("amount_credit_column", values) or 0) + elif mapping.amount_type == "simple_value": + amount = _decimal("amount_column", values) + elif mapping.amount_type == "absolute_value": + amount = abs(_decimal("debit_credit_column", values) or 0) + + balance = ( + self._get_values_from_column(values, columns, "balance_column") + if columns["balance_column"] + else None + ) + original_currency = ( + self._get_values_from_column( + values, columns, "original_currency_column" + ) + if columns["original_currency_column"] + else None + ) + original_amount = ( + self._get_values_from_column(values, columns, "original_amount_column") + if columns["original_amount_column"] + else None + ) + debit_credit = ( + self._get_values_from_column(values, columns, "debit_credit_column") + if columns["debit_credit_column"] + else None + ) + transaction_id = ( + self._get_values_from_column(values, columns, "transaction_id_column") + if columns["transaction_id_column"] + else None + ) + description = ( + self._get_values_from_column(values, columns, "description_column") + if columns["description_column"] + else None + ) + notes = ( + self._get_values_from_column(values, columns, "notes_column") + if columns["notes_column"] + else None + ) + reference = ( + self._get_values_from_column(values, columns, "reference_column") + if columns["reference_column"] + else None + ) + partner_name = ( + self._get_values_from_column(values, columns, "partner_name_column") + if columns["partner_name_column"] + else None + ) + bank_name = ( + self._get_values_from_column(values, columns, "bank_name_column") + if columns["bank_name_column"] + else None + ) + bank_account = ( + self._get_values_from_column(values, columns, "bank_account_column") + if columns["bank_account_column"] + else None + ) + + debit_column = ( + self._get_values_from_column(values, columns, "amount_debit_column") + if columns["amount_debit_column"] + else None + ) + + credit_column = ( + self._get_values_from_column(values, columns, "amount_credit_column") + if columns["amount_credit_column"] + else None + ) + + if currency.lower() != currency_code.lower(): + continue + + if isinstance(timestamp, str): + timestamp = datetime.strptime(timestamp, mapping.timestamp_format) + + if balance: + balance = self._parse_decimal(balance, mapping) + else: + balance = None + + if debit_credit is not None: + amount = abs(amount) + if debit_credit == mapping.debit_value: + amount = -amount + + if debit_column and credit_column: + debit_amount = self._parse_decimal(debit_column, mapping) + debit_amount = abs(debit_amount) + credit_amount = self._parse_decimal(credit_column, mapping) + credit_amount = abs(credit_amount) + amount = -(credit_amount - debit_amount) + + if original_amount: + original_amount = math.copysign( + self._parse_decimal(original_amount, mapping), amount + ) + else: + original_amount = 0.0 + if mapping.amount_inverse_sign: + amount = -amount + original_amount = -original_amount + balance = -balance if balance is not None else balance + line = { + "timestamp": timestamp, + "amount": amount, + "currency": currency, + "original_amount": original_amount, + "original_currency": original_currency, + } + if balance is not None: + line["balance"] = balance + if transaction_id is not None: + line["transaction_id"] = transaction_id + if description is not None: + line["description"] = description + if notes is not None: + line["notes"] = notes + if reference is not None: + line["reference"] = reference + if partner_name is not None: + line["partner_name"] = partner_name + if bank_name is not None: + line["bank_name"] = bank_name + if bank_account is not None: + line["bank_account"] = bank_account + + if line: + lines.append(line) + return lines + + @api.model + def _convert_line_to_transactions(self, line): # noqa: C901 + """Hook for extension""" + timestamp = line["timestamp"] + amount = line["amount"] + currency = line["currency"] + original_amount = line["original_amount"] + original_currency = line["original_currency"] + transaction_id = line.get("transaction_id") + description = line.get("description") + notes = line.get("notes") + reference = line.get("reference") + partner_name = line.get("partner_name") + bank_name = line.get("bank_name") + bank_account = line.get("bank_account") + + transaction = { + "date": timestamp, + "amount": str(amount), + } + + if original_currency == currency: + original_currency = None + if not amount: + amount = original_amount + original_amount = "0.0" + + if original_currency: + original_currency = self.env["res.currency"].search( + [("name", "=", original_currency)], + limit=1, + ) + if original_currency: + transaction["foreign_currency_id"] = original_currency.id + if original_amount: + transaction["amount_currency"] = str(original_amount) + + if currency: + currency = self.env["res.currency"].search( + [("name", "=", currency)], + limit=1, + ) + if currency: + transaction["currency_id"] = currency.id + + if transaction_id: + transaction["unique_import_id"] = ( + f"{transaction_id}-{int(timestamp.timestamp())}" + ) + + transaction["payment_ref"] = description or self.env._("N/A") + if reference: + transaction["ref"] = reference + + note = "" + if bank_name: + note += self.env._("Bank: %s; ", bank_name) + if bank_account: + note += self.env._("Account: %s; ", bank_account) + if transaction_id: + note += self.env._("Transaction ID: %s; ", transaction_id) + if note and notes: + note = f"{notes}\n{note.strip()}" + elif note: + note = note.strip() + elif notes: + note = notes + if note: + transaction["narration"] = note + + if partner_name: + transaction["partner_name"] = partner_name + if bank_account: + transaction["account_number"] = bank_account + + return [transaction] + + @api.model + def _parse_decimal(self, value, mapping): + if isinstance(value, Decimal): + return float(value) + elif isinstance(value, float): + return value + thousands, decimal = mapping._get_float_separators() + # Remove all characters except digits, thousands separator, + # decimal separator, and signs + value = ( + re.sub( + r"[^\d\-+" + re.escape(thousands) + re.escape(decimal) + "]+", + "", + str(value), + ) + or "0" + ) + value = value.replace(thousands, "") + value = value.replace(decimal, ".") + return float(value)