Commit Graph
2871 Commits
Author SHA1 Message Date
Raphael Collet 664ac15b59 [FIX] account: flushing while recomputing fields is not a good idea
The Python constraint method `_check_unique_sequence_number` performs an
SQL query, and therefore needs to `flush()` the some fields before doing
so.  However, it uses a generic call to `flush()`.  In some situations,
the call to `flush()` ends up into recursive flushing, and that's the
beginning of a nightmare:
 - write on account.move.state,
 - which calls account.move._check_unique_sequence_number(),
 - which calls flush(),
 - which computes purchase.order.line.qty_invoiced,
 - which reads field purchase.order.line.invoice_lines,
 - which calls flush() for account.move.line.move_name,
 - which computes account.move.line.move_name,
 - which computes account.move.name,
 - which calls account.move._check_unique_sequence_number(),
 - which calls flush(),
 - which computes purchase.order.invoice_status,
 - which uses the not-yet-computed value of purchase.order.line.qty_invoiced,
   and computes an incorrect value.

We fix it simply by making the call to `flush()` more specific: we only
need to flush 4 fields.  This avoids the nightmare above.

X-original-commit: cf5f50a733ddfd87985a39ffe7daffc48cfb582f
2021-01-04 09:16:20 +00:00
shreya thakrar 3b63b3a4d7 [IMP] account: add kanban view for the 'Generated Documents'
This commits adds kanban view for the 'Generated Documents' for better
readability on mobile devices. Also, for consistency, this commit
adds 'Upload' button on the invoice kanban view as well.

Task-ID: 2152183
2020-12-29 13:39:37 +00:00
Adrien Dieudonne 04ed2dec6f [FIX] account: open form view when single invoice generated
Before this commit, there was no difference whether multiple invoices
were uploaded or not. The list view was always opened.

Now, the form view is automatically opened when a single bill
is uploaded.

Task-ID: 2152183
2020-12-29 13:32:55 +00:00
Wolfgang Taferner 1e6dce9d4e [FIX] account: onchange of product and uom should not use currency rounding
As the price_unit and the uom rounding can be more detailed than the currency/accounting rounding (2 decimals as a standard) to cut the number before subtotal is wrong.

closes odoo/odoo#63817

X-original-commit: 1b4005f50ac45b53a73e0b95cfb661e8ccf040cd
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-12-28 10:21:46 +00:00
Adrien Widart 2f93435642 [FIX] account: cascade delete of reconcile lines
When deleting an `account_reconcile_model`, it does not delete the
corresponding `account_reconcile_model_line`. Moreover, this may prevent
the user from using the l10n_de_skr04 module.

To reproduce the error:
(Use demo data)
1. Go to Apps
2. Install "Germany SKR04 - Accounting"
3. Change the company
	- Select "DE03 Company"
4. Go to Settings > Invoicing > Fiscal Localization
5. Change the package
	- Select "Deutscher Kontenplan SKR04"
6. Save

=> A validation error is displayed: "The operation cannot be completed:
another model requires the record being deleted[...]".

When changing for SKR04, the module's installation first deletes some
models, among them: `account_reconcile_model` and later `account_tax`. The
validation error appears on `account_tax` deletion. Since version 14, an
`account_reconcile_model` is composed of `account_reconcile_model_line`
and the latter is linked to `account_tax` (with `ondelete='restrict'`).
Here is the issue: when deleting the `account_reconcile_model` model,
the corresponding lines are not deleted. As a result: later, when trying
to delete all the `account_tax`, since some `account_reconcile_model_line`
are still present in database, it triggers the `ondelete='restrict'`
constraint.

OPW-2416066

closes odoo/odoo#63649

X-original-commit: 8c9a038c6527f06b680d6346ba5569fedce4794d
Signed-off-by: adwid <adwid@users.noreply.github.com>
2020-12-21 14:42:49 +00:00
Alpesh Valaki 315a598fe5 [IMP] account: type on docstring
fix typo on docstring of _get_last_sequence method

closes odoo/odoo#63619

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-12-21 10:24:18 +00:00
Jigar Vaghela 29c82528d0 [FIX] account: correct management of groups of taxes on misc operations
Using group of taxes with type_tax_use='none' children messed up the sign of the tax_base_amount and line tags.

closes odoo/odoo#63479

X-original-commit: 3642c429899c4d5def27c9ba10ae76c763a8a566
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-12-16 17:46:30 +00:00
wan 1023479af2 [FIX] account: compute used on account.account
The field is exportable but always returns false

opw-2409324

closes odoo/odoo#63340

X-original-commit: f5c1ba1556c7db2a882740c6572127b28d064b57
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-12-14 14:34:06 +00:00
Thomas (det) d0efcd8538 [FIX] account: Negative fixed taxes on 100% discount
This commit fix a previous fix : https://github.com/odoo/odoo/pull/62244

opw-23789781~[FIX] account: Negative fixed taxes on 100% discount

closes odoo/odoo#63349

X-original-commit: da6b1667ab3566a88765f38f812df6a20c0abb03
Signed-off-by: tdetry (det-odoo) <tdetry@users.noreply.github.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-12-14 16:13:00 +00:00
oco-odoo addd40a09f [FIX] account: reconciliation models: fix auto-reconciliation result when the reconciliation doesn't cover the whole invoice
Before that, using an auto-validate reconciliation model to match an invoice with a statement line with a lesser amount resulted in the creation of an payment entry with which the invoice got fully reconciled, and the difference amount was fowarded to the suspsense account in an additional line. This wasn't correct, as we expect the invoice to be only partially paid in that case (with an amount equal to the statement line's).

closes odoo/odoo#63303

X-original-commit: 7393aa3ebcea7b80762b729315f1c890bc677efb
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-12-14 10:16:22 +00:00
Swapnesh Shah 3e0d5e54f6 [FIX] addons: incorrect field help
Field's help doesn't match with field's Usage.

closes odoo/odoo#63249

X-original-commit: a48ba4672e90a7e9f3143de5ede0099a8e28d4cd
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-12-11 14:12:11 +00:00
Wolfgang Taferner ccdfa1498f [FIX] account: if the base_tags are empty, it won't be updated
If you have a move line which was having tag_ids before and you apply a new tax
which has no values defined and result in an empty list, the assignment does not work on a x2m field,
so we do offer the proper notation for such a use case.

Closes #62934

closes odoo/odoo#63176

X-original-commit: f7cbbe381950699f2aeb26c454a4a955ed3bf2b4
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-12-10 14:25:33 +00:00
Laurent Smet 79f98810b1 [IMP] account: Allow locking the period with cancelled statement lines
This case shouldn't appear in a normal usage of the statement lines because there is no way to cancel them.
However, this case should be supported in 14.0 due to a choice we made for the migration.
Indeed, we don't want to create draft journal entries in a locked period during the migration but the statement lines that are not reconciled in a locked period shouldn't be deleted in order to keep the statement starting/ending balance consistency.
So, the journal entries created in a locked period for not reconciled statement lines are cancelled and then, we don't want to block the locking of any period because of that.

closes odoo/odoo#63104

X-original-commit: b5e186124de69061e91f657e1a330ba019614256
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-12-09 15:13:24 +00:00
Florian Gilbert 61dad4d471 [FIX] account: check statement balance at each step
Previously, the check to see if a statement ending balance is the same as the computed balance was only done when moving from draft to posted which is wrong as people can modify the balance of posted statement programmatically which is the case when using online synchronization for example. Now perform that check at each change of state: draft->posted and posted->processed. Also the indication in the view to indicate that the balance was not the same was only displayed in draft, we removed that constraints as user should always see if there is a problem.

closes odoo/odoo#62879

X-original-commit: 69fc9b71e991983b5bcddc948ac4c3749e305a3f
Related: odoo/enterprise#15155
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
Signed-off-by: Florian Gilbert <FlorianGilbert@users.noreply.github.com>
2020-12-04 12:02:14 +00:00
Adrian Torres 679185f3e8 [IMP] *: replace all raises inside unlink by api.ondelete
With this commit, all instances of errors being raised inside
`BaseModel.unlink` overrides are moved into methods decorated with
`api.ondelete` which is safer.
2020-12-04 09:16:16 +00:00
Laurent Smet 4f3ecc41c3 [FIX] account: Fix payment consistency with edited journal configuration
After a migration, if the payment is using the bank account instead of the oustanding one, we shouldn't block the user in any case when checking the payment consistency.
For example, when writing the matching number on a journal item will trigger the check consistency on the payment. So, you are unable to reconcile any journal items until you replace the account by the outstanding.

closes odoo/odoo#62842

X-original-commit: 28bc59e794f15bf4f7de31e24f496e707ba639dc
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-12-03 16:20:15 +00:00
Nasreddin (bon) eb0b664349 [FIX] account: Negative fixed taxes on 100% discount
Issue

	- Install 'Accounting' module
	- Create a new 'Tax' X with a fixed price (e.g.: O.O57 $)
	- Create a new 'Customer Invoice'
	- Add a product P and set unit price to 0 $
	- Set tax X to product P

	Total tax amount : - 0.06 $ .

Solution

	The sign must be forced to a negative sign in case the balance is on credit
	to avoid negatif taxes amount.

enterprise PR : https://github.com/odoo/enterprise/pull/15035

opw-2378978

closes odoo/odoo#62758

X-original-commit: 684855529e8aaafa0cb90f958d19c563d6e2a897
Related: odoo/enterprise#15105
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: bon-odoo <nboulif@users.noreply.github.com>
2020-12-02 15:51:55 +00:00
oco-odoo 6576e1388e [IMP] account: introduce a new field on move lines to avoid inverting tax tags
The sign of tax tags sometimes could get inverted explicitly. It typically happened for misc operations, so :
    - manual entries
    - CABA entries
    - writeoffs created from the reconciliation widget

We had to do things this way in stable to fix those use cases, but it's not ideal, as the tags shown to the user were inverted, so it was a bit confusing, as one would have expected to see the exact same tags as on tax configuration.

We fix that by using a boolean field on account.move.line telling whether or not the sign must be inverted. This allows keeping the same tags as in the tax config, and simplifies the computation of the tax report's multiplicator, making the overall model more intuitive for both user and developper.

Task 2363287

closes odoo/odoo#62536

Related: odoo/enterprise#15031
Related: odoo/upgrade#1983
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-12-01 12:40:44 +00:00
Nicolas Martinelli 8bde0c810c [FIX] account, stock_account: invoice in multi-currency
- Activate Anglo-Saxon accounting
- Set a foreign currency rate to 2.0
- Create a product A:
  Inventory Valuation: 'Automated'
  Costing Method: 'Standard Price'
  Cost: 10.0
  Public Price: 100.0
- Create an invoice in foreign currency
- Add 1 unit of A => the total amount is 200.0
- Confirm the invoice

The Amount Due is 100.0 instead of 200.0.

This happens because the Anglo-Saxon lines have the company currency,
while the other lines have the foreign currency. Because of this, the
`_compute_amount` method considers the move as multi-currency to compute
the various amount. However, the Anglo-Saxon lines should be neglected.

This happens from 14.0 because all lines have a currency. In previous
versions, lines in the company currency didn't have the `currency_id`
set.

opw-2390107

closes odoo/odoo#62657

X-original-commit: 9e1aec7873a935b287b4b3c5dbc2688acee5422a
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-12-01 08:33:53 +00:00
wan cf182dec8c [FIX] account: allow to bypass sync of date/sequence before date
Databases that already have issues are not able to fix the issues
because it is impossible to reset the items to draft in order to change
the date/sequence. Or do anything else, really.
By allowing to bypass the constraint before a certain date, users can
now edit problematic documents.

Disabling the constraint will however make it possible to entirely
break the sequences; use it with the lowest possible date.

closes odoo/odoo#62663

X-original-commit: a35d7e646d7ac419d09d5f97b2886eddc9dee0e0
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-12-01 09:21:42 +00:00
oco-odoo 89971a5ba5 [FIX] account: allow setting taxes on a miscellaneous journal entry
https://github.com/odoo/odoo/commit/1b273d4c11e3e8d8583de302b71b2522a71f4d1d added the 'general' value to invoice_filter_type_domain, neglecting that this field was used for filtering tax_ids field of account.move.line, and hence making it impossible to select any tax in that field when creating a misc. operation manually. This commit does what the initial fix intended without breaking the taxes.

closes odoo/odoo#62628

X-original-commit: fad10e505f8e2f0d64c97460144afe1be0ba808d
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-11-30 15:26:27 +00:00
Laurent Smet 9eaf787a92 [FIX] account: Fix manual reconciliation of statement line's journal entry after migration
In 13.0, create a statement line and process it by creating a custom journal item in any reconcile account.
At this point, a journal entry has been created and is linked to both a payment and a statement line.
Migrate to 14.0.
Now, try to reconcile manually the custom journal item with anything. Because the matching number is written on the line, it triggers the synchronization between the payment and the entry but it fails because the manual entry doesn't really look a valid payment.

closes odoo/odoo#62621

X-original-commit: 962195d85aa1f2fedb0647a5cd454740c1322281
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-11-30 14:35:47 +00:00
Martin Trigaux 1658473bf2 [FIX] *: rephrase, correct typos
Courtesy of Transifex's translators for reporting bad/unclear sentences.

closes odoo/odoo#62564

X-original-commit: 9b3b2e8d711e3be75b1faffaf6f4f8f4ec90186e
Related: odoo/enterprise#15038
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-11-30 07:07:58 +00:00
Nicolas (vin) 723aaa22b2 [IMP] acc: Add domain on journal field of journal entries
In order to avoid eventual futur issues, this PR add a filter on the
journal field of journal entries to only allow selecting misc journals

task id #2371198

closes odoo/odoo#62331

X-original-commit: 1b273d4c11e3e8d8583de302b71b2522a71f4d1d
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-11-25 14:12:27 +00:00
wan ed190b3e67 [FIX] account: do not precompute name of payment
Reproduce:
* On a fresh db, create a payment
* Change the date to another month
* Validate

Issue:
* The name is computed before creation because it is the first of
  journal/period.
* It is not visible
* It is given to the create vals of the move_id, so it is not correctly
  recomputed
* The sequence/name  are not in sync.

opw-2390747

closes odoo/odoo#62554

X-original-commit: 3a8247f603a02a05173ef917f9f07189ff5e01db
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-11-27 15:40:54 +00:00
Victor Feyens 048927f845 [IMP] account: restrict deletion of payment methods 2020-11-27 16:10:01 +00:00
Victor Feyens ab76c421c2 [IMP] uom: protect/warn against uom changes/deletion
1) forbid deletion of main uoms & categories

2) warn modifications of main uoms data.
Except for the working Hours uom, which isn't a strict UoM
representation and could change between countries (and/or be deleted).

3) Also move the Dozen UoM to demo datas, it's a confusing UoM and isn't
used by the majority of databases.

4) Restrict deletion of used uoms on main models.
On sale orders and account moves the uoms couldn't be deleted thanks to the
SQL constraint covering the display_type logic, but the generic error message
is more clear for a user when deleting an uom.
2020-11-27 16:10:01 +00:00
Vishnu Vanneri d311632b60 [FIX] account: restrict deletion of fiscal positions
Fiscal positions shouldn't be deleted if used by existing account moves

closes odoo/odoo#62443

X-original-commit: 6b2d0faf170f7b5061f5facbaa3818e529a2de4c
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-11-26 16:26:05 +00:00
alt-odoo 6b0017ffda [FIX] account: wrong number of statement lines to check in dashboard
On the accounting dashboard, for bank and cash journals, we are
displaying the number of items to check. Since commit https://github.com/odoo/enterprise/commit/b2dd65b9a9c054570d5796a81f2c390c4d8cb6c4,
when getting bank statement data, we are filtering the ones that
are not reconciled using is_reconciled computed field. We should
also include is_reconciled = False when getting dashboard data.

closes odoo/odoo#62373

X-original-commit: 8c0e92cdcdf98daa3c841af97e0bd2e4b015a1b9
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: Alex Tuyls <alt-odoo@users.noreply.github.com>
2020-11-26 09:05:54 +00:00
Nicolas Martinelli 835846f1c2 [FIX] account: suspense account type
The suspense account created doesn't have the type corresponding to the
domain:

https://github.com/odoo/odoo/blob/658d0fa32f35f4c4f9a1828b11fa383d3dad3b46/addons/account/models/account_journal.py#L97

opw-2387857

closes odoo/odoo#62351

X-original-commit: b2596ce81490cd3b8e1218cfd19d2843fa1a6f04
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-11-25 16:39:08 +00:00
Nicolas (vin) b94b52ff7e [IMP] account: Prevent inconsistent amounts and currencies on vendor bills.
when a Vendor bill in an inactive currency is created (via an an EDI or the OCR,
or when the user create the invoice in an active foreign currency, then desactivate it)
it should not be possible to validate it.

Task ID: #2289537

closes odoo/odoo#54096

Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-11-17 07:50:22 +00:00
wan d4892f26ea [FIX] account: copy journal entry without partner
The partner is not visible in the form so copying can lead to unwanted
behaviours.

Task 2389917
opw-2388430

closes odoo/odoo#62276

X-original-commit: ef1b3332a523f0afdb954f8eb2abb8f442bdca58
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-11-24 18:18:23 +00:00
Anh Thao Pham (pta) d897c73852 [FIX] account: fix 0% taxes shown on invoice print
- Install Invoicing
- Go to Invoicing > Configuration > Taxes
- Create a Tax 0% with its own tax group
- Go to Invoicing > Customers > Invoices
- Create an Invoice with a line having a normal Tax and several lines with Tax 0%
- Confirm and print Invoice
On the Subtotal section of the printed invoice, for the label of the Tax Group of Tax 0%,
only the amount of the first line having this tax is shown.
(i.e. "Tax 0% on $ XXX", where XXX should be the sum of all lines on which Tax 0% is applied)

opw-2381051

closes odoo/odoo#62106

X-original-commit: 9e244ae3053f46fc22b8e9a75015d57cd70053b8
Signed-off-by: Anh Thao PHAM <kitan191@users.noreply.github.com>
2020-11-20 15:06:41 +00:00
Florian Gilbert 442326bc29 [REF] account: adapt main_flow tour and __init__.py for new sync module
This part of the tour can't work with the new online synchronization
module (account_online_synchronization) due to the fact that we are
using an iframe to display the list of institutions and therefore
those steps won't work within the iframe.

Also remove account_plaid & account_yodlee from _auto_install_l10n as
those modules don't exists anymore.

closes odoo/odoo#50267

Related: odoo/upgrade#1780
Related: odoo/enterprise#8200
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2020-11-19 14:13:52 +00:00
wan e0d09357d0 [FIX] account: deactivate sequence/date sync constraint on statements
opw-2379384
opw-2381830
opw-2381936

closes odoo/odoo#62044

X-original-commit: 6f260124a01879ce39933b2671c002cf1b7d13e7
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-11-19 18:02:05 +00:00
Nicolas Martinelli b94519e6e8 [FIX] account: account creation
- Install accounting app
- Go to "Charts of Accounts" view by setup panel
- Create a new record

A traceback occurs because `self.ids` is empty in the context of the
creation of a new record.

opw-2379463

closes odoo/odoo#62014

X-original-commit: b325266bc9d3893e037b3fd8d734ac7d3d510c41
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-11-19 12:37:25 +00:00
Adrien Widart 0994533e8e [FIX] account: reconciliation model with percentage >100
To reproduce the error:
1. Invoicing > Reconciliation Models > Create
2. Add name
3. (Counterpart Values) Add a line
        - Amount Type: Percentage of balance
        - Amount: Something bigger than 100
4. Save

=> UserError raised ("The amount is not a percentage")

This is an error. A user should be able to set a percentage greater than 100.
The fix removes the constraint.

OPW-2375462

closes odoo/odoo#62010

X-original-commit: 2776209ba9a437c413dd5670c1695a06da909a5a
Signed-off-by: adwid <adwid@users.noreply.github.com>
2020-11-19 11:51:18 +00:00
wan 260bb5a540 [FIX] account: add support for format like 045-001-000002
Before this fix, the prefix was detected as `045-0` and the year as `1`
instead of no year with prefix `045-001`.

opw-2381351

closes odoo/odoo#61931

X-original-commit: e1b4521e82af1c865d69e9e0cf637713d0b94480
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-11-18 12:07:09 +00:00
oco-odoo 6abde401bf [FIX] account: also support QRR on payment form for Swiss QR-codes
When displaying a QR-code on the account.payment form view, we now pass its communication as both structured and unstructured communication, letting the QR-code generator parse it needed. This allows supporting QR-IBANs and QRR communications for Swiss QR-codes.

closes odoo/odoo#61891

X-original-commit: de6e81337d168ef296f7b0aa46aedbea1ea7a82d
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-11-17 17:59:50 +00:00
Martin Trigaux e433bc57ff [FIX] *: rephrase, correct typos
Courtesy of Transifex's translators for reporting bad/unclear sentences.

closes odoo/odoo#61804

X-original-commit: f5d0f4a1ebf406583889e9e04912d40c0693343e
Related: odoo/enterprise#14769
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-11-16 16:47:28 +00:00
Jorge Pinna Puissant 6e594f9537 [FIX] account,point_of_sale: increment customer supplier rank to commercial partner
Before this commit, if a customer/supplier has an invoice address, when
creating an invoice/bill it's the invoice address that will be
identified as the customer/supplier and that will have its rank
increased and not the commercial partner.

Now, the rank increment is done to the commercial partner as well.

opw-2377870

closes odoo/odoo#61778

X-original-commit: dbf042611ccb134a220704d6b775aab650364ca2
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-11-16 12:25:34 +00:00
Laurent Smet 6d03583a82 [FIX] account,l10n_: Restore journal liquidity account hook
The overrides in l10n_ modules are broken since 14.0 because the hook no longer exists.

closes odoo/odoo#61610

X-original-commit: 1fe852e032876f2f3212a43fc3115e49f4de618d
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-11-10 16:55:31 +00:00
Martin TrigauxandXavier Morel 49838338e0 [FIX] *: sanitize action content reading
The open_action_with_context was not using _for_xml_id, producing an
error when reading the action content.

In open_action, the action_name was taken from the context and needs
sanity checks. Ensure only actions from the account module can be
read and only if the user has access to the target model.
This is a limitation of the previous behaviour but, at the moment, all
known calls are made refering to an action from the account module.
Limit the scope of this method while the 14.0 is still early to avoid
having a door open to ready any action, and difficult to close later.

Remove old action fetching from the context in create_move that is no
longer used.

closes odoo/odoo#61602

X-original-commit: a39e94f7e4dc74e850650ac90bbc5f85af130bc8
Related: odoo/enterprise#14695
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Co-authored-by: Xavier Morel <xmo@odoo.com>
2020-11-10 16:04:29 +00:00
Andrea Grazioso (agr-odoo) 4a0054a409 [FIX] account: fix total recomputation when having 100% tax
Create a tax as follows:
* Tax Computation: Percentage of Price Tax Included
* Tax Scope: Purchase
* Amount: 100%
* Included in Price
* Affect Base of Subsequent Taxes
Create a vendor bill with the tax on the line
Change unit price

The total does not change

This occur because when having 100% tax debit/credit are unchanged.
So the onchange `_onchange_mark_recompute_taxes` is not triggered and
the tax lines are not updated, thus not changing the
total (as in this case the invoice total is just the tax value)

opw-2370861

closes odoo/odoo#61555

X-original-commit: 9e203cc016b45875f699ffab24fe3f8382a97303
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
2020-11-09 16:04:03 +00:00
Nicolas Martinelli 5c57644ead [FIX] account: cash rounding precision
A cash rounding precision must be strictly larger than zero to follow
the restriction introduced in e270e9e0cc.

opw-2341804

closes odoo/odoo#61382

X-original-commit: 563752358d233d4fc9cf1d7e7abd0b1656dc82c1
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-11-09 08:53:46 +00:00
Nicolas Martinelli 57d76c8539 [FIX] account: extract fpos recomputation logic from onchange
We extract the `price_unit` and `tax_ids` recomputation logic from the
`_onchange_product_id` method. This way, it can be called
programmatically.

opw-2371934

closes odoo/odoo#61477

X-original-commit: ca6f25bef45137c032bc5cafd336c3f16a97a929
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-11-06 13:01:54 +00:00
wan 084690edc9 [FIX] account: deduce sequence reset
The order to find when to reset the sequence needs to be the following:
* find a sequence used before the date of this move
* if there isn't any, find the sequence of any move

Because we were not looking at the second step for bank statements, we
could have an issue since we were not checking the sequence relative to
the correct date.

closes odoo/odoo#61495

X-original-commit: b863b9cfedb3e7b4d1e3d409c829ffa0bfa1d9bb
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-11-06 16:57:41 +00:00
wan beec09e27e [FIX] account: don't change the payment date
This line seems to have been copied from before the refactoring
https://github.com/odoo/odoo/commit/caeb782841fc5a7ad71a196e2c9ee67644ef9074

It didn't work at first:
https://github.com/odoo/odoo/commit/ea3e39506a2b360545ec0cd1d3235e69ad16ea6c

It conflicted with the new constraint for matching the date with the
move name `_constrains_date_sequence` on `sequence.mixin`, and was right
to conflict.

closes odoo/odoo#61465

X-original-commit: 1aa0404966c6abc89d68a5118c2742de9e6b617b
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-11-06 11:24:27 +00:00
william-andre d4b4069dec [FIX] account: prevent changing date and journal of move with name
We need to ensure the name stays consitent with the journal_id and the
date when we try to change one of those fields.

X-original-commit: 634aaeeac36d2371743338536466a0bcc9ad6c69
2020-11-06 11:24:26 +00:00
Goffin Simon 49afd2f807 [FIX] account: Impossible to import a camt file with Stmt Id > 2147483647
Steps to reproduce:

- Let's consider a camt file F with Stmt Id > 2147483647
- Import F

Bug:

An index out of range was raised because range of an integer type in postgresql must be
in [-2147483648, 2147483647]

opw:2372401

closes odoo/odoo#61391

X-original-commit: 953d3069fb77605a8d69f80124d011144595d459
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-11-05 11:23:54 +00:00