odoo-addon-account-statement-import-sheet-file 16.0.1.1.1.2__py3-none-any.whl → 16.0.1.1.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of odoo-addon-account-statement-import-sheet-file might be problematic. Click here for more details.
- odoo/addons/account_statement_import_sheet_file/README.rst +1 -1
- odoo/addons/account_statement_import_sheet_file/__manifest__.py +1 -1
- odoo/addons/account_statement_import_sheet_file/i18n/es.po +3 -3
- odoo/addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py +19 -10
- odoo/addons/account_statement_import_sheet_file/static/description/index.html +1 -1
- odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx +0 -0
- odoo/addons/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py +140 -0
- {odoo_addon_account_statement_import_sheet_file-16.0.1.1.1.2.dist-info → odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info}/METADATA +2 -2
- {odoo_addon_account_statement_import_sheet_file-16.0.1.1.1.2.dist-info → odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info}/RECORD +11 -10
- {odoo_addon_account_statement_import_sheet_file-16.0.1.1.1.2.dist-info → odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info}/WHEEL +0 -0
- {odoo_addon_account_statement_import_sheet_file-16.0.1.1.1.2.dist-info → odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info}/top_level.txt +0 -0
|
@@ -7,7 +7,7 @@ Bank Statement TXT/CSV/XLSX Import
|
|
|
7
7
|
!! This file is generated by oca-gen-addon-readme !!
|
|
8
8
|
!! changes will be overwritten. !!
|
|
9
9
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
10
|
-
!! source digest: sha256:
|
|
10
|
+
!! source digest: sha256:52fd7c31d7753fa4ea912b113bfc30c98f54839022ff9071e6b4604483f28f30
|
|
11
11
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
12
12
|
|
|
13
13
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
{
|
|
6
6
|
"name": "Bank Statement TXT/CSV/XLSX Import",
|
|
7
7
|
"summary": "Import TXT/CSV or XLSX files as Bank Statements in Odoo",
|
|
8
|
-
"version": "16.0.1.1.
|
|
8
|
+
"version": "16.0.1.1.2",
|
|
9
9
|
"category": "Accounting",
|
|
10
10
|
"website": "https://github.com/OCA/bank-statement-import",
|
|
11
11
|
"author": "ForgeFlow, CorporateHub, Odoo Community Association (OCA)",
|
|
@@ -7,8 +7,8 @@ msgstr ""
|
|
|
7
7
|
"Project-Id-Version: Odoo Server 15.0\n"
|
|
8
8
|
"Report-Msgid-Bugs-To: \n"
|
|
9
9
|
"POT-Creation-Date: 2023-10-18 06:13+0000\n"
|
|
10
|
-
"PO-Revision-Date: 2024-
|
|
11
|
-
"Last-Translator:
|
|
10
|
+
"PO-Revision-Date: 2024-05-12 21:35+0000\n"
|
|
11
|
+
"Last-Translator: Sergio Ariel Ameghino <ariel.ameghino@gmail.com>\n"
|
|
12
12
|
"Language-Team: none\n"
|
|
13
13
|
"Language: es\n"
|
|
14
14
|
"MIME-Version: 1.0\n"
|
|
@@ -606,7 +606,7 @@ msgstr "ninguno"
|
|
|
606
606
|
#. module: account_statement_import_sheet_file
|
|
607
607
|
#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__float_thousands_sep__quote
|
|
608
608
|
msgid "quote (')"
|
|
609
|
-
msgstr ""
|
|
609
|
+
msgstr "cita (')"
|
|
610
610
|
|
|
611
611
|
#. module: account_statement_import_sheet_file
|
|
612
612
|
#: model:ir.model.fields.selection,name:account_statement_import_sheet_file.selection__account_statement_import_sheet_mapping__delimiter__semicolon
|
odoo/addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
import itertools
|
|
6
6
|
import logging
|
|
7
|
+
import math
|
|
8
|
+
import re
|
|
7
9
|
from collections.abc import Iterable
|
|
8
10
|
from datetime import datetime
|
|
9
11
|
from decimal import Decimal
|
|
@@ -83,8 +85,8 @@ class AccountStatementImportSheetParser(models.TransientModel):
|
|
|
83
85
|
balance_end = last_line["balance"]
|
|
84
86
|
data.update(
|
|
85
87
|
{
|
|
86
|
-
"balance_start":
|
|
87
|
-
"balance_end_real":
|
|
88
|
+
"balance_start": balance_start,
|
|
89
|
+
"balance_end_real": balance_end,
|
|
88
90
|
}
|
|
89
91
|
)
|
|
90
92
|
transactions = list(
|
|
@@ -336,14 +338,14 @@ class AccountStatementImportSheetParser(models.TransientModel):
|
|
|
336
338
|
balance = None
|
|
337
339
|
|
|
338
340
|
if debit_credit is not None:
|
|
339
|
-
amount = amount
|
|
341
|
+
amount = abs(amount)
|
|
340
342
|
if debit_credit == mapping.debit_value:
|
|
341
343
|
amount = -amount
|
|
342
344
|
|
|
343
345
|
if original_amount:
|
|
344
|
-
original_amount =
|
|
345
|
-
original_amount, mapping
|
|
346
|
-
)
|
|
346
|
+
original_amount = math.copysign(
|
|
347
|
+
self._parse_decimal(original_amount, mapping), amount
|
|
348
|
+
)
|
|
347
349
|
else:
|
|
348
350
|
original_amount = 0.0
|
|
349
351
|
if mapping.amount_inverse_sign:
|
|
@@ -457,11 +459,18 @@ class AccountStatementImportSheetParser(models.TransientModel):
|
|
|
457
459
|
@api.model
|
|
458
460
|
def _parse_decimal(self, value, mapping):
|
|
459
461
|
if isinstance(value, Decimal):
|
|
460
|
-
return value
|
|
462
|
+
return float(value)
|
|
461
463
|
elif isinstance(value, float):
|
|
462
|
-
return
|
|
463
|
-
value = value or "0"
|
|
464
|
+
return value
|
|
464
465
|
thousands, decimal = mapping._get_float_separators()
|
|
466
|
+
# Remove all characters except digits, thousands separator,
|
|
467
|
+
# decimal separator, and signs
|
|
468
|
+
value = (
|
|
469
|
+
re.sub(
|
|
470
|
+
r"[^\d\-+" + re.escape(thousands) + re.escape(decimal) + "]+", "", value
|
|
471
|
+
)
|
|
472
|
+
or "0"
|
|
473
|
+
)
|
|
465
474
|
value = value.replace(thousands, "")
|
|
466
475
|
value = value.replace(decimal, ".")
|
|
467
|
-
return
|
|
476
|
+
return float(value)
|
|
@@ -366,7 +366,7 @@ ul.auto-toc {
|
|
|
366
366
|
!! This file is generated by oca-gen-addon-readme !!
|
|
367
367
|
!! changes will be overwritten. !!
|
|
368
368
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
369
|
-
!! source digest: sha256:
|
|
369
|
+
!! source digest: sha256:52fd7c31d7753fa4ea912b113bfc30c98f54839022ff9071e6b4604483f28f30
|
|
370
370
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
|
371
371
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/bank-statement-import/tree/16.0/account_statement_import_sheet_file"><img alt="OCA/bank-statement-import" src="https://img.shields.io/badge/github-OCA%2Fbank--statement--import-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/bank-statement-import-16-0/bank-statement-import-16-0-account_statement_import_sheet_file"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/bank-statement-import&target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
372
372
|
<p>This module allows you to import any TXT/CSV or XLSX file in Odoo as bank
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx
ADDED
|
Binary file
|
odoo/addons/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py
CHANGED
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
|
4
4
|
|
|
5
5
|
from base64 import b64encode
|
|
6
|
+
from decimal import Decimal
|
|
6
7
|
from os import path
|
|
8
|
+
from unittest.mock import Mock
|
|
7
9
|
|
|
8
10
|
from odoo import fields
|
|
9
11
|
from odoo.exceptions import UserError
|
|
@@ -45,6 +47,12 @@ class TestAccountStatementImportSheetFile(common.TransactionCase):
|
|
|
45
47
|
"account_type": "asset_current",
|
|
46
48
|
}
|
|
47
49
|
)
|
|
50
|
+
self.parser = self.env["account.statement.import.sheet.parser"]
|
|
51
|
+
# Mock the mapping object to return predefined separators
|
|
52
|
+
self.mock_mapping_comma_dot = Mock()
|
|
53
|
+
self.mock_mapping_comma_dot._get_float_separators.return_value = (",", ".")
|
|
54
|
+
self.mock_mapping_dot_comma = Mock()
|
|
55
|
+
self.mock_mapping_dot_comma._get_float_separators.return_value = (".", ",")
|
|
48
56
|
|
|
49
57
|
def _data_file(self, filename, encoding=None):
|
|
50
58
|
mode = "rt" if encoding else "rb"
|
|
@@ -538,3 +546,135 @@ class TestAccountStatementImportSheetFile(common.TransactionCase):
|
|
|
538
546
|
line2 = statement.line_ids.filtered(lambda x: x.payment_ref == "LABEL 2")
|
|
539
547
|
self.assertEqual(line2.amount, 1525.00)
|
|
540
548
|
self.assertEqual(line2.amount_currency, 1000.00)
|
|
549
|
+
|
|
550
|
+
def test_import_xlsx_empty_values(self):
|
|
551
|
+
sample_statement_map_empty_values = (
|
|
552
|
+
self.AccountStatementImportSheetMapping.create(
|
|
553
|
+
{
|
|
554
|
+
"name": "Sample Statement with empty values",
|
|
555
|
+
"amount_type": "distinct_credit_debit",
|
|
556
|
+
"float_decimal_sep": "comma",
|
|
557
|
+
"delimiter": "n/a",
|
|
558
|
+
"no_header": 0,
|
|
559
|
+
"footer_lines_skip_count": 1,
|
|
560
|
+
"amount_inverse_sign": 0,
|
|
561
|
+
"header_lines_skip_count": 1,
|
|
562
|
+
"quotechar": '"',
|
|
563
|
+
"float_thousands_sep": "dot",
|
|
564
|
+
"reference_column": "REF",
|
|
565
|
+
"description_column": "DESCRIPTION",
|
|
566
|
+
"amount_credit_column": "DEBIT",
|
|
567
|
+
"amount_debit_column": "CREDIT",
|
|
568
|
+
"balance_column": "BALANCE",
|
|
569
|
+
"timestamp_format": "%d/%m/%Y",
|
|
570
|
+
"timestamp_column": "DATE",
|
|
571
|
+
}
|
|
572
|
+
)
|
|
573
|
+
)
|
|
574
|
+
journal = self.AccountJournal.create(
|
|
575
|
+
{
|
|
576
|
+
"name": "Bank 2",
|
|
577
|
+
"type": "bank",
|
|
578
|
+
"code": "BAN2",
|
|
579
|
+
"currency_id": self.currency_usd.id,
|
|
580
|
+
"suspense_account_id": self.suspense_account.id,
|
|
581
|
+
}
|
|
582
|
+
)
|
|
583
|
+
data = self._data_file("fixtures/sample_statement_en_empty_values.xlsx")
|
|
584
|
+
wizard = self.AccountStatementImport.with_context(journal_id=journal.id).create(
|
|
585
|
+
{
|
|
586
|
+
"statement_filename": "fixtures/sample_statement_en_empty_values.xlsx",
|
|
587
|
+
"statement_file": data,
|
|
588
|
+
"sheet_mapping_id": sample_statement_map_empty_values.id,
|
|
589
|
+
}
|
|
590
|
+
)
|
|
591
|
+
wizard.with_context(
|
|
592
|
+
account_statement_import_sheet_file_test=True
|
|
593
|
+
).import_file_button()
|
|
594
|
+
statement = self.AccountBankStatement.search([("journal_id", "=", journal.id)])
|
|
595
|
+
self.assertEqual(len(statement), 1)
|
|
596
|
+
self.assertEqual(len(statement.line_ids), 3)
|
|
597
|
+
|
|
598
|
+
def test_parse_decimal(self):
|
|
599
|
+
# Define a series of test cases
|
|
600
|
+
test_cases = [
|
|
601
|
+
(
|
|
602
|
+
"1,234.56",
|
|
603
|
+
1234.56,
|
|
604
|
+
self.mock_mapping_comma_dot,
|
|
605
|
+
), # standard case with thousands separator
|
|
606
|
+
(
|
|
607
|
+
"1,234,567.89",
|
|
608
|
+
1234567.89,
|
|
609
|
+
self.mock_mapping_comma_dot,
|
|
610
|
+
), # multiple thousands separators
|
|
611
|
+
(
|
|
612
|
+
"-1,234.56",
|
|
613
|
+
-1234.56,
|
|
614
|
+
self.mock_mapping_comma_dot,
|
|
615
|
+
), # negative value
|
|
616
|
+
(
|
|
617
|
+
"$1,234.56",
|
|
618
|
+
1234.56,
|
|
619
|
+
self.mock_mapping_comma_dot,
|
|
620
|
+
), # prefixed with currency symbol
|
|
621
|
+
(
|
|
622
|
+
"1,234.56 USD",
|
|
623
|
+
1234.56,
|
|
624
|
+
self.mock_mapping_comma_dot,
|
|
625
|
+
), # suffixed with currency code
|
|
626
|
+
(
|
|
627
|
+
" 1,234.56 ",
|
|
628
|
+
1234.56,
|
|
629
|
+
self.mock_mapping_comma_dot,
|
|
630
|
+
), # leading and trailing spaces
|
|
631
|
+
(
|
|
632
|
+
"not a number",
|
|
633
|
+
0,
|
|
634
|
+
self.mock_mapping_comma_dot,
|
|
635
|
+
), # non-numeric input
|
|
636
|
+
(" ", 0, self.mock_mapping_comma_dot), # empty string
|
|
637
|
+
("", 0, self.mock_mapping_comma_dot), # empty space
|
|
638
|
+
("USD", 0, self.mock_mapping_comma_dot), # empty dolar
|
|
639
|
+
(
|
|
640
|
+
"12,34.56",
|
|
641
|
+
1234.56,
|
|
642
|
+
self.mock_mapping_comma_dot,
|
|
643
|
+
), # unusual thousand separator placement
|
|
644
|
+
(
|
|
645
|
+
"1234,567.89",
|
|
646
|
+
1234567.89,
|
|
647
|
+
self.mock_mapping_comma_dot,
|
|
648
|
+
), # missing one separator
|
|
649
|
+
(
|
|
650
|
+
"1234.567,89",
|
|
651
|
+
1234567.89,
|
|
652
|
+
self.mock_mapping_dot_comma,
|
|
653
|
+
), # inverted separators
|
|
654
|
+
]
|
|
655
|
+
|
|
656
|
+
for value, expected, mock_mapping in test_cases:
|
|
657
|
+
with self.subTest(value=value):
|
|
658
|
+
result = self.parser._parse_decimal(value, mock_mapping)
|
|
659
|
+
self.assertEqual(result, expected, f"Failed for value: {value}")
|
|
660
|
+
|
|
661
|
+
def test_decimal_and_float_inputs(self):
|
|
662
|
+
# Test direct Decimal and float inputs
|
|
663
|
+
self.assertEqual(
|
|
664
|
+
self.parser._parse_decimal(-1234.56, self.mock_mapping_comma_dot),
|
|
665
|
+
-1234.56,
|
|
666
|
+
)
|
|
667
|
+
self.assertEqual(
|
|
668
|
+
self.parser._parse_decimal(1234.56, self.mock_mapping_comma_dot),
|
|
669
|
+
1234.56,
|
|
670
|
+
)
|
|
671
|
+
self.assertEqual(
|
|
672
|
+
self.parser._parse_decimal(
|
|
673
|
+
Decimal("-1234.56"), self.mock_mapping_comma_dot
|
|
674
|
+
),
|
|
675
|
+
-1234.56,
|
|
676
|
+
)
|
|
677
|
+
self.assertEqual(
|
|
678
|
+
self.parser._parse_decimal(Decimal("1234.56"), self.mock_mapping_comma_dot),
|
|
679
|
+
1234.56,
|
|
680
|
+
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-account-statement-import-sheet-file
|
|
3
|
-
Version: 16.0.1.1.
|
|
3
|
+
Version: 16.0.1.1.2
|
|
4
4
|
Summary: Import TXT/CSV or XLSX files as Bank Statements in Odoo
|
|
5
5
|
Home-page: https://github.com/OCA/bank-statement-import
|
|
6
6
|
Author: ForgeFlow, CorporateHub, Odoo Community Association (OCA)
|
|
@@ -26,7 +26,7 @@ Bank Statement TXT/CSV/XLSX Import
|
|
|
26
26
|
!! This file is generated by oca-gen-addon-readme !!
|
|
27
27
|
!! changes will be overwritten. !!
|
|
28
28
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
29
|
-
!! source digest: sha256:
|
|
29
|
+
!! source digest: sha256:52fd7c31d7753fa4ea912b113bfc30c98f54839022ff9071e6b4604483f28f30
|
|
30
30
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
31
31
|
|
|
32
32
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
odoo/addons/account_statement_import_sheet_file/README.rst,sha256=
|
|
1
|
+
odoo/addons/account_statement_import_sheet_file/README.rst,sha256=bntJdQ0pEAidWrx3OViFse6jsvQ870b4PtaybKYEZnM,4501
|
|
2
2
|
odoo/addons/account_statement_import_sheet_file/__init__.py,sha256=X9EJGOE2GtZbS0G82PtSXmWSZ_R8jEM0rlJTDliQjp4,21
|
|
3
|
-
odoo/addons/account_statement_import_sheet_file/__manifest__.py,sha256=
|
|
3
|
+
odoo/addons/account_statement_import_sheet_file/__manifest__.py,sha256=2rRWupnaApuJBz-mFe2Z-_7cEFx1IA4hqqEa4CpZ6EE,934
|
|
4
4
|
odoo/addons/account_statement_import_sheet_file/data/map_data.xml,sha256=nz_4CchVMF9pb_SI4I6UZAt2IBPxWapX37lU6J6sTJ0,1225
|
|
5
5
|
odoo/addons/account_statement_import_sheet_file/i18n/account_statement_import_sheet_file.pot,sha256=Xf56lTES-y5d_bliUsekQdwLRKZl6KhlilArFQXfziI,26423
|
|
6
|
-
odoo/addons/account_statement_import_sheet_file/i18n/es.po,sha256=
|
|
6
|
+
odoo/addons/account_statement_import_sheet_file/i18n/es.po,sha256=r0dB7FwIyf4CnqrrUUwIoscwqY1oFjtLDHb8yaUyisw,31885
|
|
7
7
|
odoo/addons/account_statement_import_sheet_file/i18n/es_AR.po,sha256=M0scXwemt20iY_usFw1x38I315Na5Hsl4PI-R7Nch1M,30172
|
|
8
8
|
odoo/addons/account_statement_import_sheet_file/i18n/it.po,sha256=GtD-H3cuavdvEu5qxvevsCADm54pNdYPkQUvZYtQFgw,30838
|
|
9
9
|
odoo/addons/account_statement_import_sheet_file/i18n/nl.po,sha256=OIfIbKptYzCICzo4vUiTYgYSfcMdQu_SxBbFEMFewzk,27321
|
|
@@ -15,7 +15,7 @@ odoo/addons/account_statement_import_sheet_file/models/__init__.py,sha256=RsEvd8
|
|
|
15
15
|
odoo/addons/account_statement_import_sheet_file/models/account_journal.py,sha256=F4_deAvNErZ6o1gkw9uhDrEnHyWXUKNvk09mzCVzTIw,562
|
|
16
16
|
odoo/addons/account_statement_import_sheet_file/models/account_statement_import.py,sha256=KWDYgO9-C1ZAF7JO9Qlq2ghROcJIwKhGp1CueTnA368,1932
|
|
17
17
|
odoo/addons/account_statement_import_sheet_file/models/account_statement_import_sheet_mapping.py,sha256=KYZYk796CeNZ-j9GH8JC7QIEv2Osbn5jcV5pX1XUm18,8830
|
|
18
|
-
odoo/addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py,sha256=
|
|
18
|
+
odoo/addons/account_statement_import_sheet_file/models/account_statement_import_sheet_parser.py,sha256=hxDQUv_CN9uXSWn4yvoj_iGsMQGMWQu1sbQcEq1y7sk,17335
|
|
19
19
|
odoo/addons/account_statement_import_sheet_file/readme/CONFIGURE.rst,sha256=imX9sFGbzYnr4I07MZvHBZyyhBm8pLZ6AmpKNVY6zR4,213
|
|
20
20
|
odoo/addons/account_statement_import_sheet_file/readme/CONTRIBUTORS.rst,sha256=IK3_tHCu2A5OhQq1TbYtOURyUOzywj7htdWpjbo07fw,469
|
|
21
21
|
odoo/addons/account_statement_import_sheet_file/readme/DESCRIPTION.rst,sha256=lHrjCbQdpNU9QhA9vwxyRgJWJHk87YujRn6P8L2Ha3A,86
|
|
@@ -23,9 +23,9 @@ odoo/addons/account_statement_import_sheet_file/readme/HISTORY.rst,sha256=XHPod2
|
|
|
23
23
|
odoo/addons/account_statement_import_sheet_file/readme/USAGE.rst,sha256=5wVe6CMUaGqAsE-yxAuc03YSxIFnRQ9mHeFkw-UBI68,184
|
|
24
24
|
odoo/addons/account_statement_import_sheet_file/security/ir.model.access.csv,sha256=ofB5jVirJJ3FQ-uWfKFD-DIg8Lh9bYLaUDQWnb9MkgM,685
|
|
25
25
|
odoo/addons/account_statement_import_sheet_file/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
26
|
-
odoo/addons/account_statement_import_sheet_file/static/description/index.html,sha256=
|
|
26
|
+
odoo/addons/account_statement_import_sheet_file/static/description/index.html,sha256=aXNBtq1kttPAYjdPypuvon9Ub9MhK08WsSqxufP6A1g,15285
|
|
27
27
|
odoo/addons/account_statement_import_sheet_file/tests/__init__.py,sha256=f7vTpmONnfbbcMp5wZ1p7muSkyLC2vcDONaw2VGyiBw,121
|
|
28
|
-
odoo/addons/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py,sha256=
|
|
28
|
+
odoo/addons/account_statement_import_sheet_file/tests/test_account_statement_import_sheet_file.py,sha256=3V98ug6c9xjrSMMhUAk5bXWgBjjgmZzIkx0ttFju62g,27703
|
|
29
29
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/balance.csv,sha256=-7VrGM_IbKhOJzbX-bUMIsnd99uDIBkalTytlj2jVtk,209
|
|
30
30
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/debit_credit.csv,sha256=AaVQ9G5gqsLhxtAsYXCmFCTxpBPonKA1uxy7ue5gYYE,223
|
|
31
31
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/debit_credit_amount.csv,sha256=y-VoBcF_7WaUZhnmOqSuCv7ElCKSHRbsqKWpCH49Ams,369
|
|
@@ -40,10 +40,11 @@ odoo/addons/account_statement_import_sheet_file/tests/fixtures/original_currency
|
|
|
40
40
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_credit_card_inverse_sign_en.csv,sha256=19xKZlVxR6yqSGGC2WR6_YpBKfev6pMTMThENamE8DA,222
|
|
41
41
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.csv,sha256=6WexRDEog728ur2DK7J_xI056FCrX5CkB-3xK6LixAM,265
|
|
42
42
|
odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_en.xlsx,sha256=eOpaIIiKh6hTE_ebGwCgIaJBpoehKEQAqrXjHiMklVQ,5101
|
|
43
|
+
odoo/addons/account_statement_import_sheet_file/tests/fixtures/sample_statement_en_empty_values.xlsx,sha256=hNsBB9zBQG11On56axs8nZRrzff9d6DFVyQGsyuRb_M,6501
|
|
43
44
|
odoo/addons/account_statement_import_sheet_file/views/account_journal_views.xml,sha256=iROLliBEfXvtXNsyHg5Ycvx9Rw9uuNWaXxdJsk8V1V4,670
|
|
44
45
|
odoo/addons/account_statement_import_sheet_file/views/account_statement_import.xml,sha256=KhgiMxHjI5tq1RlkmDYOhejqrxN4mXLc5nT9EM9gQ5s,842
|
|
45
46
|
odoo/addons/account_statement_import_sheet_file/views/account_statement_import_sheet_mapping.xml,sha256=1MoNt2wsvb2qHaYzrh7iVMHMjBEfwq2caRJ5mLCeEBc,6999
|
|
46
|
-
odoo_addon_account_statement_import_sheet_file-16.0.1.1.
|
|
47
|
-
odoo_addon_account_statement_import_sheet_file-16.0.1.1.
|
|
48
|
-
odoo_addon_account_statement_import_sheet_file-16.0.1.1.
|
|
49
|
-
odoo_addon_account_statement_import_sheet_file-16.0.1.1.
|
|
47
|
+
odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info/METADATA,sha256=xiiaHZ2tQ9c2lQPBoMImKEaJghm0uejz4jyM9t6jsJ0,5227
|
|
48
|
+
odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
49
|
+
odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
|
50
|
+
odoo_addon_account_statement_import_sheet_file-16.0.1.1.2.dist-info/RECORD,,
|
|
File without changes
|