Commit Graph
15395 Commits
Author SHA1 Message Date
Akim Juillerat 1c5771a412 [FIX] account: Fix UPDATE in _toggle_reconcile_to_false
As _toggle_reconcile_to_true updates the amount_residual on unreconciled
move lines linked to the account, _toggle_reconcile_to_false must
set the amount_residual to 0.
However as the SQL query is broken the update fails and move lines
supposed to have 0 as amount_residual still have the value.

closes odoo/odoo#52533

X-original-commit: 8e32134cedce688c0fa33d1c51c5570d63f14efa
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-05 16:41:59 +00:00
Thibault Delavallée 99c2c2ee1e [REF] digest: move template to QWeb
PURPOSE

Make digest email and tips more appealing. The goals of these tips are

  * to encourage the adoption of other apps (Did you know ?);
  * to make Odoo look more fun (Fun tips and tricks, young and dynamic style);
  * to show social proof and increase trust (emphasis on already existing
    projects / customers to);

SPECIFICATIONS

Digest now use qweb views instead of a standard mail.template record for
rendering as

  * template is very custom;
  * probability of breaking it while edition the mail template is high;
    it is easier to maintain and extend in qweb;
  * only body was really used, other mail-related fields were not used;

We therefore remove the mail template data and the field used for it on
the digest model. Template is now forced to a Qweb view.

We can also remove the template_id field. Indeed we think that having
different templates for digests is a really advanced use case we do not
want to support.

Finally kpis and action computation is rewritten. It now returns an unique
structure containing all information in a more neutral way, holding values
for 3 columns. Purpose is to be less date-oriented in data construct and
allow people to use digest qweb template to display a 3-columns KPIs content
even if not related to yesterday / last 7 days / last 30 days.

LINKS

Task ID 2197417
Community PR odoo/odoo#51619
Upgrade PR odoo/upgrade#1256
2020-06-04 15:20:08 +00:00
Laurent Smet 842497e8b8 [FIX] account: Reintroduce the mocked_today method
This method has been lost during the forward-port of:
https://github.com/odoo/odoo/commit/161498cf8a75d62f9a8e1a17c6dc62a142b85acc

closes odoo/odoo#52424

X-original-commit: 18d08cc3b48a12c015bd2513cc64ee1166336b5d
Related: odoo/enterprise#10956
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-06-04 13:33:44 +00:00
oco-odoo ea4ef3d206 [FIX] account: make tax audit computation work with cash basis taxes
https://github.com/odoo/enterprise/commit/7d17dad678361f161c259eddd45d9b5186941bd0 fixed the sign used for cash basis entries in the tax report, but this change had to be reflected on the tax_audit computed on cash basis entries as well.

Before that, cash basis entries never were made on sales journals, and their move lines never had a refund-typed invoice_id. So it means those factors, when present on the original invoice, never influenced the audit string computed for cash basis entries. This was obviously wrong.

closes odoo/odoo#52381

X-original-commit: 1157b3073f409c9fbdffe8f3b3322331f470de02
Related: odoo/enterprise#10927
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-03 16:59:16 +00:00
Laurent Smet 564a1b94a7 [IMP] account,l10n_fi: Allow custom COA in accounting test suite
- A custom COA could be passed as parameter.
- Merge the invoice setup to the generic suite like it is in master.

forwart-port of https://github.com/odoo/odoo/commit/161498cf8a75d62f9a8e1a17c6dc62a142b85acc

closes odoo/odoo#52378

X-original-commit: c0acebe2c55f7030df3bd10ad8058da6a070aa72
Related: odoo/enterprise#10921
Signed-off-by: Josse Colpaert <jco@openerp.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-06-04 06:28:07 +00:00
Laurent Smet 5ee61b4af1 [FIX] account: Fix take money in/out in cashbox
'account_id' & 'name' are no longer valid fields to create a statement line since:
https://github.com/odoo/odoo/commit/caeb782841fc5a7ad71a196e2c9ee67644ef9074

closes odoo/odoo#52343

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-03 11:19:11 +00:00
william 74a3057035 [REV] account: reconciliation models: apply percentage properly for suggestion buttons
This reverts commit d3bd67fa12d85515fa6683f7b5d9ae114056bb62.

Even though there might be a usability issue, we need to have the
previous behavior because of the following case:

We have now a problem for the regex pattern, and it shows in the demo
data (lines `R:9772938 10/07 AX 9415116318 T:5 BRT: 100,00€ C/ croip`)
What we have now is
Name       | debit | credit
--         | --    | --
Due amount | 0     | 100
Bank Fees  | 0     | 96.67

But what we wanted was
Name       | debit | credit
--         | --    | --
Due amount | 0     | 100
Bank Fees  | 3.33  | 0

closes odoo/odoo#52195

X-original-commit: 35c31bb80b7a2cb8a855bbc05c66ca70ab71261e
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-02 07:14:07 +00:00
william fef6e133a0 [FIX] account: do not install l10n_generic_coa if another is installed
The module l10n_generic_coa was installed in every single case when
loading a new db from the console because the country is US by default.
If we have a `-i l10n_*`, we dont need to install another CoA based on
the country.
The fact that it is installed was messing with the demo data because we
were searching for a type of account not necessary present in the CoA
installed on the company.

closes odoo/odoo#52190

X-original-commit: d3ad353c86f7b148946f9e36457f6b002cc118c1
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-05-29 15:24:37 +00:00
Benjamin Frantzen (bfr) 913f22f73f [ADD] account_edi: generic module to manage EDI (factur-x)
- account_edi is the base module to manage EDIs. It manages the generic worflow of import/export and defines the methods for import/export that should be overridden by each types of EDI (in different modules).
- On export, the files are added as attachment and can be embeded into pdf (format specific).
- On export, the exported format are set on the journal to allow different settings based on journal (different companies, countries, etc).
- On import, depending on the import method (from message_post or upload button in invoice tree view) a new invoice is created or an existing one is updated (only allowed draft invoices with no invoice lines).
- Adapted factur-x
2020-05-29 07:16:30 +00:00
Andrea Grazioso (agr-odoo) 75c624e211 [FIX] account: disable Amount Matching when invisible
Go to Reconciliation Models > Invoices Matching Rule
Set the parameter 'Amount Matching'
Set 'Partner Is Set & Matches'
Save
Edit
Unset 'Partner Is Set & Matches'

'Amount Matching' will switch to invisible but is not disabled

opw-2261134

closes odoo/odoo#52048

X-original-commit: 61f1ca63e5dc27e06c855bb09b18bf4897e8ab1f
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-28 08:22:38 +00:00
Odoo's Mergebot 41bf013e04 [MERGE] base: make ir.property private
Only system users can access ir.property records.

This PR is part of the long-term task id 8203 that plans to remove all access to
 ir.* models

"Official" methods to interact with `ir.property`:
- `_set_default(name, model, value, company=False)`
- `_set_multi(name, model, values, default_value=None)`
- `_get(name, model, res_id=False)`
- `_get_multi(name, model, ids)`

Done in this PR:
- remove ACL on ir.property (only system users can access directly)
- make all getter/setters private with sudo
- use these methods everywhere instead of CRUD calls
- add sudo where needed

closes odoo/odoo#51658

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-28 07:13:56 +02:00
Goffin Simon bb4b07df3f [FIX] account: Payment matching with cash basis
Steps to reproduce the bug:

- Let's consider the current company CY in €
- Let's consider a cash basis tax T of 20%
- Let's consider that 1€ = 2$
- Create a customer invoice I on journal J in € for customer C
- Create a line on J with 100€ and set T on it
- Post I
- Create a payment P of 240$ for C on bank journal in €
- Confirm P and click on payment matching
- Try to reconcile P with I

Bug:

A traceback was raised.

Fine tuning of https://github.com/odoo/odoo/commit/0497c311e790454deb9ded2ed4fb206f5fd929ef

opw:2256207

closes odoo/odoo#51952

X-original-commit: 633fc71c14e8258d2a6cb2b8ee4bcc6b41a1124f
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-05-27 11:58:54 +00:00
Nicolas Martinelli 9d1c3de480 [FIX] account: incorrect forwardport
Previous fixes on invoice analysis report were incorrectly
forward-ported.

closes odoo/odoo#51961

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-27 09:27:45 +00:00
Martin Trigaux 6db2a81ea2 [IMP] *: use specific ir.property methods
Do not make direct CRUD to ir.property records, use appropriate
methods for that
2020-05-26 15:50:11 +02:00
Martin Trigaux a4472b104b [FIX] *: use sudo when accessing ir.property
Add sudo in base to allow a unpriviledged user to interact with
ir.property in a safe way usingsetters and getters.
By making them callable without sudo, we encourage to use these
methods instead of making CRUD requests on ir.property directly

For other specific search where no native method exists, add sudo
2020-05-26 15:50:11 +02:00
Martin Trigaux 4afa747fa1 [IMP] *: make ir.property methods private
Should only interact with them via python code in a controlled
environment, no direct call with RPC
2020-05-26 15:50:11 +02:00
Julien Mougenot 709d2e8a7a [IMP] account,web: SearchPanel: improve folding behaviour
1) Clicks on a section value are now bound to the entire header, meaning
that the sole purpose of the carets is purely esthetic.
2) Search panel categories will now only be folded if they are being
clicked on while already selected.

Classes that were no longer useful have been removed and tests have been
updated accordingly.

Task 2264700

closes odoo/odoo#51555

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-05-26 13:09:00 +00:00
Julien Mougenot 22167aac57 [IMP] account,web: SearchPanel: move carets to the left
In this commit, hierarchy carets in the search panel have been moved to
the left side of the labels. To achieve a consistent and correct
alignment, some DOM elements have been added/moved and the related SCSS
sheets have been adapted.

Carets on filter sections of the search panel have also been removed.

Task 2258508
2020-05-26 13:09:00 +00:00
Swapnesh Shah 41e409cff8 [FIX] account: apply correct filters
Before this commit, Clicking on "Unpaid Invoices" or  "Bills to Pay" will open records which includes Unposted moves as well while the count was only counting Posted + Unpaid moves only.

With this commit, We apply the default 'posted' filter, and include the partially paid invoices to make the filter behavior consistent with the count.

closes odoo/odoo#51763

X-original-commit: b4a08879de7109b91834fdcde4eafb2ac8c002a4
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-26 12:26:57 +00:00
Nicolas Martinelli a874dfa08a [FIX] account: foreign exchange partner
- Create rates at dates 1 and 2 for a foreign currency
- Create an invoice at date 1 in foreign currency, set a partner
- Register a payment at date 2

The foreign exchange entry has no partner, while it should have as it
was the case up to 12.0.

opw-2249257

closes odoo/odoo#51873

X-original-commit: 3bc48c01f68c6ee95bec206a4a992adc43a0d8b9
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-26 10:44:47 +00:00
Martin Trigaux 4dbab5a70b [IMP] account: use singular description
The description of the model is used in sentences like
This <model> has been created from: <link>
All model descriptions should be singular

Courtesy of Erwin van der Ploeg for raising the issue

closes odoo/odoo#51837

X-original-commit: e0acef778272abb748dacfe4460b3536b3c30a82
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-26 07:34:17 +00:00
Swapnesh Shah db08c1c794 [IMP] account: use correct tab name in warning
Before this commit, It was refering to wrong tab name in the warning.

With this commit, We use correct tab/section name in the warning.

Follwo up on  https://github.com/odoo/odoo/commit/045e0c0a26412d001a5f735225719d8d77887d9e#diff-dd671a54296b170ea1393dca1a5f7798R2988

closes odoo/odoo#51646

Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-21 16:53:11 +00:00
Laurent Smet 38fcc79c34 [FIX] account: Fix taxes amount by group with group of taxes
- Create a vendor bill with a line having a group of taxes

An additional tax line is displayed under the bill total with a 0 amount
because the created group of taxes has a zero amount.

closes odoo/odoo#51802

X-original-commit: adb02066f7cbead66eca21185f2ad142b46298a8
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-05-25 11:58:03 +00:00
william 09a6a4da11 [IMP] account: add inverse of reversed_entry_id
We often have to know if an entry is reversed (i.e. if it has a reversal
move_id), not if this is the move that is the reversal of another move.
2020-05-25 08:30:12 +00:00
Nicolas Martinelli f5a8be7444 [FIX] account: compute destination account
Make sure a value is always set for the field `destination_account_id`.

opw-2254722

closes odoo/odoo#51615

X-original-commit: 9e68ec931d254ba563b4a16afa38b6003336a7cf
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-22 07:21:17 +00:00
wan 576a69e29e [REF] account: remove unused actions
Task 2201948

*These actions were either unused or only used in enterprise modules.
The first ones have been deleted, and the second ones have been move to
the corresponding enterprise modules.

* account.fiscal.year: the whole model has been moved to enterprise

closes odoo/odoo#46110

Related: odoo/enterprise#8706
Related: odoo/upgrade#1083
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-20 07:29:29 +00:00
oco-odoo e33e668213 [FIX] account: don't depend on price_subtotal to compute amount_by_group
price_subtotal and price_unit shouldn't be used on tax lines. While it might seem to be always set by the code on those lines, it is not intended to work this way ; which is why migration scripts sometimes let those fields blank on such lines. Before this fix, such migrated databases always had a tax amount of 0 shown in amount_by_group, which was of course wrong.

closes odoo/odoo#51563

X-original-commit: d3b810de3680acba3e2587111f58a33ad5c29fb6
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-05-19 16:03:11 +00:00
william 64873d225e [FIX] account: import balances with unaffected earnings
If we try to load a csv file with opening values for the anuaffected
earnings account, there will be errors because when trying to balance
the move, we filter the lines on that account and we don't expect there
to be multiple lines in it.

closes odoo/odoo#51401

X-original-commit: ad4277219fe078712916e91c1be566a9b412fe1f
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-05-19 11:26:00 +00:00
oco-odoo c136c42a7d [FIX] account: reconciliation models: get residual amount of bank statement lines properly
[FIX] account: reconciliation models: don't mix currencies when checking the candidates for applicability of a model

Before that, similiar amount of different currencies could be matched together, regardless of the exchange rate. We now entirely forbid this case from the reconciliation models.

closes odoo/odoo#51153

Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-05-18 10:53:51 +00:00
Raphael Collet ea3e39506a [IMP] models: use slots for BaseModel
This restricts the attributes of a BaseModel instance to `env`, `_ids`
and `_prefetch_ids`.  This way, one can only assign fields on a record;
other assignments are programming errors.

This also reduces the memory footprint of records from 168 to 64 bytes
(-62%), and makes their instanciation faster.

closes odoo/odoo#51075

Related: odoo/enterprise#10529
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-05-18 09:51:43 +00:00
Krupal Oza 6d17897dff [IMP] various: Clean the kanban view design
PURPOSE
=========================

The goal of this task is to set up some kind of guidelines to make
kanban views consistent.
It is fine having different kanban views, but if a UI element is shared
among several kanban views, it should behave/look the same so the user
knows what to expect.

Kanban views can be split into two types:
==> 'documents' kanbans, such as res.partner, crm.lead, etc.
    - those records are created/edited often, numerous
    - 'opening' the card means accessing the record
==> 'dashboard' kanbans,such as stock.picking.type,account.journal, etc.
    - those records are not created/edited often, there are much less numerous
    - usually presented as dashboard, where 'opening' the card means
accessing a set of related 'documents' (clicking on a account.journal
to access account.move, or stock.picking.type to access stock.picking)
    - configuration of the 'card record' is done through a dropdown to
access configuration

Here are some guidelines for consistency. Bear in mind that those are
not rules, but guidelines for consistency that we'd like to keep in
mind when designing.

==> 'documents' kanbans
 - the record is accessed through global click
 - the user avatar is at the bottom right
 - the activity widget is at the bottom left (in last position if
there are other elements)

==> 'dashboard' kanbans
 - the record is accessed through a 'Configuration' option in the card dropdown
 - there is no global click, and therefore no focus shadow
 - the dropdown icon (o_kanban_manage_toggle_button) is always visible,
with icon fa-ellipsis-v
 - the listview counterpart should be presented as a dedicated
configuration menu, and shouldn't be in the 'dashboard action'
 - links in the body of the card are structured as follows: link with
<count>+label, then any additional aggregated metrics (not link) to the right
example https://drive.google.com/file/d/1ZP6HDHTtC7cQ6rDWgqLoPs6U8JCeNVkW/view?usp=sharing

==> global guidelines
 - the title font color is #212529, with 500 weight
 - the subtitle font color is #666666, with 400 weight
 - the font size is 1.083rem
 - text overflow is handled through linebreak, not ellipsis
 - numerical values are aligned to the right
 - the kanban state widget is at the bottom right

SPECIFICATION
=================

AS per guidelines Improved follwing kanban/dashbaord view
 - hr_job
 - hr_department
 - hr_work_entry
 - hr_appraisal
 - fleet_vehicle
 - product_template
 - sale_subscription_template
 - crm_team
 - res_partner
 - event
 - stock_picking_type
 - mrp_eco_type
 - maintenance_team
 - quality_alert_team
 - account_journal

Added the department menu on employee with default kanban view
Added sequence in hr_work_entry list view

TaskID: 2206372
Related Enterprise PR: https://github.com/odoo/enterprise/pull/10341
Closes: #50536
2020-05-18 12:11:22 +00:00
Andrea Grazioso (agr-odoo) 9277c1afe7 [FIX] account: fix partner credit/debit computation
Add Total Receivable and Total Payable to contacts list view.
Create Vendor Bill for a partner with $0 Receivable and Payable - the
Payable amount is updated in the list view.
Create an invoice for this partner - the Total Payable is changed to $0,
and the Total Receivable is updated in the list view.
Create a Vendor Bill for a partner having a Receivable amount - the
Payable is not updated.

This occured after commit 9920f20e4c
In a situation in which the lines retrieved from the db are arranged
like

|pid|    type   | val |
|---|-----------|-----|
| 10|    payable|  500|
| 14| receivable|  200|
| 14|    payable|  300|

line 3 will cancel line 2 because partner credit will be set to false
after the debit update.

Fixing by checking that the same partner has not been processed yet

opw-2250989

closes odoo/odoo#51351

X-original-commit: 0274d61a11c6f5220d6af37a38adafb3e5276224
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
2020-05-15 14:54:58 +00:00
Yannick Tivisse 7b714a3bc7 [IMP] various: Update list views with new widgets
Purpose
=======

The following task implemented new widgets/features in the listview for better UI.
https://www.odoo.com/web#id=2195254&action=327&model=project.task&view_type=form&cids=1&menu_id=4720

The goal of the current task is to use those to upgrade our listviews

Specification
=============

Below are change requests on various listviews.

Remove decoration-bf="message_needaction==True" from every listview in every module.

PRODUCT - stock.view_stock_product_template_tree (product template)

remove all decorations from <tree>
set the following decorations on 'virtual_available' and 'qty_available'
decoration-danger="virtual_available&lt;0"
decoration-warning="virtual_available==0"
also set decoration-bf on 'virtual_available'
apply the same modifications on stock.view_stock_product_tree for product variants

SUBSCRIPTION - sale_subscription.sale_subscription_view_list

remove all decorations from <tree>
'stage_id' field
set <field name="stage_id" widget="badge" decoration-info="stage_category == 'draft'" decoration-success="stage_category == 'progress'"/>
'recurring_next_date' field
set <field name="recurring_next_date" string="Next Invoice" widget="remaining_days" attrs="{'invisible': [('stage_category', '!=', 'progress')]}"/>
set decoration-bf on 'code' and 'recurring_total_incl'
move 'percentage_satisfaction' before 'recurring_total_incl'
set widget="many2one_avatar_user" on 'user_id'
add <field name="activity_ids" widget="list_activity"/> after 'user_id'

ELEARNING - website_slides.slide_channel_view_tree

set widget="many2one_avatar_user" on 'user_id'
'enroll' field
set <field name="enroll" widget="badge" decoration-success="enroll == 'public'" decoration-info="enroll == 'invite'" decoration-warning="enroll == 'payment'"/>

POS - point_of_sale.view_pos_order_tree

remove all decorations from <tree>
'state' field
make visible and move it at the end of the view
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-success="state not in ('draft','cancel')"/>
set decoration-bf on 'name'

APPRAISAL - hr_appraisal.view_hr_appraisal_tree

'state' field
set <field name="state" widget="badge" decoration-info="state in ('new','pending')" decoration-success="state == 'done'"/>
'date_close' field
set <field name="date_close" widget="remaining_days" attrs="{'invisible': ['|',('state','=','done'),('state','=','cancel')]}"/>

PAYMENT - account.view_account_payment_tree

remove all decorations from <tree>
'state' field
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-success="state == 'posted'"/>
move 'company_id' before 'amount'

CONTRACT - hr_contract.hr_contract_view_tree

remove all decorations from <tree>
'state' field
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-warning="state == 'close'" decoration-success="state == 'open'"/>
set widget="many2one_avatar_employee" on 'employee_id'

PAYSLIPS - hr_payroll.view_hr_payslip_tree

remove all decorations from <tree>
'state' field
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-warning="state == 'verify'" decoration-success="state in ('done','paid')"/>
set decoration-bf on 'number' and 'net_wage'
move 'company_id' before 'basic_wage'
set widget="many2one_avatar_employee" on 'employee_id'

SURVEY - survey.survey_tree

'state' field
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-success="state == 'open'"/>

APPLICATION - hr_recruitment.crm_case_tree_view_job

set widget="date' on 'create_date'
set widget="priority' on 'priority'
set widget="many2one_avatar_user" on 'user_id'

TIME OFF - hr_holidays.hr_leave_view_tree

remove all decorations from <tree>
'state' field
set <field name="state" widget="badge" decoration-info="state == 'draft'" decoration-warning="state in ('confirm','validate1')" decoration-success="state == 'validate'"/>
apply the same changes in hr_holidays.hr_leave_allocation_view_tree

closes odoo/odoo#51305

Taskid: 2256589
Related: odoo/enterprise#10614
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-15 08:24:05 +00:00
Victor Feyens 5c0b431baf [IMP] account: factorize company onboarding steps 2020-05-07 13:11:50 +00:00
Martin Trigaux 5a7427fcf3 [FIX] account: allow manager to add bank account
The model account.setup.bank.manual.config (menu "Add a Brank
Account") was with the group account.group_account_user ("Show Full
Accounting Features").
Since 65530dfd6a, transient models have ACL and are not accessible
if the user does not belong in the group.
The account.setup.bank.manual.config model is triggered via the server
action account.action_new_bank_setting instead of a classical
menu. It's also displayed in an onboarding step of account.
Because of this, the group must be relaxed (and not just adding a
group of a view/action)

In saas-13.2, 65530dfd6a made simply the wizard appears in readonly
but in saas-13.4, since 56a8c9e431, trying to display a model on
which we do not have access produces and access rights error.

closes odoo/odoo#51330

X-original-commit: a4a2b8198d5d2d368e279929a5cdbcca0376d8ef
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-15 11:15:22 +00:00
Laurent Smet 318325a74a [IMP] account: Add default label on payment's journal items
The label of the journal items generated for a payment is the
communication. However, this field is not required leading to
journal items with an empty label.
This doesn't lead to a good usability when opening the reports or
when trying to edit manually the journal entry because the label
is required on the form view.

closes odoo/odoo#51275

Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-15 06:20:33 +00:00
jbw 26175ea7a1 [IMP] account : remove analytic default modules
Merge account_analytic_default into account
Merge account_analytic_default_hr_expense into hr
Merge account_analytic_default_purchase into purchase

Prevent having to manually install default modules after activating analytics

closes odoo/odoo#50816

Task: 2182900
Related: odoo/upgrade#1186
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-14 07:53:18 +00:00
Goffin Simon 969ea2a0d3 [FIX] account: Wrong base amount with included tax
Fine tuning of the test of https://github.com/odoo/odoo/commit/d9eaae8acc600f936fbc4fa48a49a7f4d65fcd7f

As the journal was not explicitely set, a default journal with a company different that the one set up from
function setUpClass() defined in class InvoiceTestCommon

So a traceback was sometimes raised in the test saying:

Some records are incompatible with the company of the Journal Item.\n\nIncompatibilities:\nFields: account_id\nRecord ids: 1809, 1810, 1811

opw:2244708

closes odoo/odoo#51285

X-original-commit: dd40fb63b4ebdd4dd7b44c75d415e99b52d633a1
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-05-14 16:39:08 +00:00
Martin Trigaux d9287caf94 [IMP] *: convert to private methods
render, render_template, load, activity_schedule_with_view,
get_website_pages should all be private:
It should not be possible to render an aribtrary template only with
its name or id

Still need to render some qweb views from js so the method
render_template is kept public.
This explains why the website editor still need read access on
ir.ui.view as we want to allow any snippet to be rendered.
2020-05-14 13:59:10 +02:00
Goffin Simon 2b8e405d75 [FIX] account: Wrong base amount with included tax
Steps to reproduce the bug:

Let's consider a company C with french accounting
Create a new journal entry JE with one line L with debit = 100 and credit = 0
and account = 601100 Achats stockés - Matières premières ou groupe A)
Set TVA déductible (achat) 20,0% TTC on JE (where this tax is included
in price but not included in base amount)
Bug:

A new line is created on account 445660 TVA déductible sur autre bien et service with a debit = 16,67 instead of 20.0 and credit 0

Now with this fix, we consider that the amount encoded by the user is the base on which each taxes must be computed (instead of
magically subtracting included tax from the base)

opw:2244708

closes odoo/odoo#51219

X-original-commit: c9ce26534d2f8fa69068bfdbeb9994eb12d4124e
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-05-14 06:48:25 +00:00
Laurent Smet b5f4251d26 [FIX] account: Fix access to properties from invoice with wrong company
The properties must always be accessed using the company of the journal entry defined by
its journal.

closes odoo/odoo#51094

Task: 2244829
X-original-commit: bf416d95b1216c5780d3dbeaa32f0e57dc50c574
Related: odoo/enterprise#10543
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-05-13 06:27:18 +00:00
Mario Krajacic e3c303e6cb [FIX] account: correct partner view
The domain on the view was incorrect. The field is a required
selection where one of the selection is 'none'

closes odoo/odoo#51076

X-original-commit: 80dd40dd86484b3ab8c47b3baa315843f0027871
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-12 07:52:16 +00:00
Pratima Gupta 0cecb056d4 [IMP] l10n_xx: remove function alias added by f8d4bf44
instead, try_loading used directly.

closes odoo/odoo#50382

Task: 2239900
Closes: #50382
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-05-01 06:10:55 +00:00
Laurent Smet 1d7b3a8b2f [FIX] account: Fix lost call to action_invoice_paid during reconciliation
Restore the explicit call to action_invoice_paid introduced by:
https://github.com/odoo/odoo/commit/f028a5f410daf6974110f7c341b330f63fdd8885#diff-dd671a54296b170ea1393dca1a5f7798R3779

... probably lost in a bad rebase at:
https://github.com/odoo/odoo/commit/caeb782841fc5a7ad71a196e2c9ee67644ef9074#diff-dd671a54296b170ea1393dca1a5f7798L3955

closes odoo/odoo#50843

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-05-07 11:23:51 +00:00
Goffin Simon aa0444e3de [FIX] account: Wrong tax amount with Python tax code
Steps to reproduce the bug:

- Create a new tax T based on python code, leave the code how it is by default (result = price_unit * 0.10)
- Check included in price
- Create an invoice, add a customer, add a line with random label, assign unit price = 100 and select tax T.

Bug:

On the invoice, the Untaxed Amount =  90 and Taxes = -10 instead of 10 (like the behavior in 12.0)

opw:2242188

closes odoo/odoo#50567

X-original-commit: c704611f7cceee516718f16610838af930709022
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-05-04 14:56:55 +00:00
Ravi Singh 6ef2e1d3ec [IMP] account: invoice view improvement inside portal.
In this commit- we have added filter options like bills and invoices in
for invoice view(portal side) .

In addition, we have changed sort by option's string from 'Invoice Date' to 'Date'.

task-2124829
Closes #48402
2020-04-16 06:21:51 +00:00
Mathieu Duckerts-Antoine dda171300f [IMP] account: adapt search panels to new counters
Record counts are now also available for field with select="one"
attribute. In the module account, the counts should not be displayed
since the search panels have to be quite thin. We then disable them.

closes odoo/odoo#44490

Related: odoo/enterprise#8113
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-05-05 19:23:20 +00:00
Laurent Smet 035fadb7d5 [FIX] account: Don't lock a fiscal year with unprocessed statement lines
closes odoo/odoo#50227

Related: odoo/enterprise#10226
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-05 07:16:39 +00:00
Nicolas Martinelli 458b952d01 [FIX] account: balance not rounded
- Set the Product Price precision to 5
- Create an invoice with one line:
  No taxes
  Price Unit: 0.895
- Save

An error is raised because of an unbalanced journal entry.

The root cause is the `balance` which is not rounded. This is due to the
fact that the currency field (`company_currency_id`) is a related and
not set at the moment of computation. This leads to this being equal to
`0.01` instead of zero:

https://github.com/odoo/odoo/blob/ed1926cb12c830f383dbe540cb96e14d0804eb3d/addons/account/models/account_payment_term.py#L64

Note that if the line is saved with another value then the price unit
is modified, the error doesn't occur since the balance is properly
rounded.

opw-2209543

closes odoo/odoo#50655

X-original-commit: bd4bf1fe759a70d0b44606f1b2a3b27f8e71971d
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-05 12:52:56 +00:00
Aaron Bohy 89c1d81b24 [IMP] *: update form views
*account,purchase,sale

Make them use widget mail_many2one_avatar.

Part of task 2195254

closes odoo/odoo#49345

Related: odoo/enterprise#10074
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2020-05-05 10:05:12 +00:00