Commit Graph
12328 Commits
Author SHA1 Message Date
Yannick Tivisse 6ac7b55869 [FIX] account: Allow a Billing user to create an invoice/credit note
Purpose
=======

When validation his first invoice/credit note, a billing user can choose which number will be the first on the invoice sequencing but it will raise a access right issue

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

We want to allow a billing user to do it, but we can't give him the right to write on the ir_sequence.

For that reason, we won't modify the ir.sequence field on the journal and skip this part. The field won't be displayed too on the form.

Additional Point:
~~~~~~~~~~~~~~~~~

A cleaning of the code has been made to avoid raise conditions even when the first invoice has been created (2 users creating 2 invoices before having one validated).
2017-08-11 13:57:31 +02:00
Yannick Tivisse 8cc216b659 [IMP] account: Split clearly the accounting & invoicing applications
PURPOSE
=======

1) Have a clear split between the invoicing and the accounting apps
2) Have a clear split between the community and the enterprise version (no accounting in community)

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

(1) When only invoicing installed, we shouldn't see accounts (for community and enterprise)
(a) Perpetual Inventory Valuation:
     - Hide the field inventory valuation from the product category
(b) Taxes
- No accounts
- No cash basis option
- No tax adjustment

(2) Remove from Community, modules:
- Accounting
- Budgets
- Assets

(3) No account_report in community, keep PDF reports for
- sale/purchase journal
- Aged partner balance
- Partner Ledger

(4) Clean split between invoicing and accounting in enterprise
(a) When installing invoicing, I shouldn't have access to accounting just by changing my access right to adviser
(b) Menus (when only invoicing installed)
- Sales
    - Customer Invoices
    - Customer Credit Notes
    - Payments
    - Customer Statements
    - Customers
    - Sellable Products
- Purchases
    - Vendor Bills
    - Vendor Credit Notes
    - Payments
    - Vendors
    - Purchasable Products
- Reporting
    - Partner Reports
        - Partner Ledger
        - Aged Receivable
        - Aged Payable
    - Audit Reports
        - Tax report
    - Management
        - Invoices
        - Product Margins
- Configuration
    - Settings
    - Products
        - Products
    - Accounting
        - Taxes
        - Fiscal Positions
        - Bank Accounts
        - Journals
    - Management
        - Payment Terms
        - Follow-up levels
    - Payments
        - Payment Acquirers
(c) Settings (when only invoicing installed)
- Fiscal Localization
- Taxes
    - Default Taxes
    - Rounding Method
    - TaxCloud connection
    - TaxCloud Categories
    - EU Digital Goods VAT
    - VIES VAT CHECK
- Currencies
    - Main currency
    - Multi-currencies
- Invoicing
    - Warnings
    - Docsaway
- Customer Payments
    - Follow-up levels
    - Payment Followup
- Bills Payment
- Bank & Cash
- Analytics
    - Margin
- Automated Entries

Remarks
- Test with the different access rights
2017-08-11 13:57:30 +02:00
Yannick Tivisse 2a45fbe3d2 [IMP] account: Isolate group_account_user in account
Purpose
=======

We want to clear the accounting access groups when only the Invoicing application is installed as follows:

If only Invoicing is installed, we should only have 2 groups: `Billing` and `Billing Manager`
If Accouting and Finance is installed, we should have the current groups: `Billing`, `Accountant` and `Advisor`

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

1/ If we have only Invoicing the should have the following hierarchy:

group_account_manager (Billing Manager) ---Implies---> group_account_invoice (Billing)

group_account_user (Accountant) is a technical group out the Accouting groups hierarchy

2/ If we have Accouting and Finance installed, we should then have:

group_account_manager (Advisor) ---Implies---> group_account_user (Accountant) ---Implies---> group_account_invoice (Billing)

The reason we want to keep the group_account_user is that we will hide the accouting fields (account_id,...) with this group, allowing the consultants to show the accouting related information on support.
2017-08-11 13:57:18 +02:00
Xavier Morel cbffd99341 [IMP] use hasclass() xpath function 2017-08-11 10:44:40 +02:00
Christophe Simonis 1fa8680286 [MERGE] forward port branch saas-17 up to 48b2ce60ed 2017-08-10 18:07:47 +02:00
Christophe Simonis 48b2ce60ed [MERGE] forward port branch saas-16 up to 85571bb78c 2017-08-10 17:01:05 +02:00
Christophe Simonis 85571bb78c [MERGE] forward port branch saas-15 up to dde62073ba 2017-08-10 16:22:36 +02:00
qdp-odoo 6d3acf6d4a [FIX] account: fix reconciliation and creation of exchange rate entries
fixed cases:
    1) having more than one account.move.line with a residual amount. This can easily be achieved by
    -make a first invoice
    -partially pay it
    -make a second invoice
    -partially pay it
    -make a payment of the remaining amount
    -reconcile the lines together

    2) having more than one foreign currency involved, with several ecxhange difference to book
2017-08-10 11:46:56 +02:00
Dhaval Panchal 3d3a23c919 [IMP] account, sale, report_intrastat: compute tax included price based on sale settings
In tax-included price mode, SO and invoices don't have same line totals that confusing for both customers and users.

task: https://www.odoo.com/web#id=33455&view_type=form&model=project.task&menu_id=
2017-08-10 10:47:41 +02:00
qdp-odoo 35b3617667 [FIX] account: payment onchange in multi currencies
Computation of the field 'Difference amount' was wrong as it was converting amounts in base currency in the following use case:
- company currency USD
- invoice currency EUR
- payment's journal currency USD but payment's currency EUR
- invoice of 100€, payment of 20€: difference was not 80€ because it was converting to USD
2017-08-10 10:31:51 +02:00
qdp-odoo 5641372532 [FIX] account: show payments in multi currencies with the rate of the invoice date instead of the payment date (so that we can see a meaningful residual)
Without this patch, the residual of the invoice doesn't correspond to the real residual of the invoice's receivable/payable line(s)
2017-08-10 10:29:38 +02:00
Thibault Delavallée 0fad594dc1 [IMP] http_routing, account, sale: remove pager from request
Use the pager through import directly.
2017-08-09 17:46:22 +02:00
Thibault Delavallée 37c8818059 [REM] account, sale: remove unused get_signup_url method 2017-08-09 17:46:20 +02:00
Christophe Simonis c3d710d2f6 [MERGE] forward port branch saas-14 up to 80ac087d6e 2017-08-09 17:11:10 +02:00
Haresh Shyara 5dba97b7a0 [IMP] analytic: Add analytic tags on analytic entries
PURPOSE
=======

Be able to use analytic tags on analytic entries

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

Add analytic tag field in analytic entries
2017-08-09 17:02:35 +02:00
Christophe Simonis 80ac087d6e [MERGE] forward port branch 10.0 up to f69655829a 2017-08-09 15:53:37 +02:00
Jigar Patel 2adc9d5032 [IMP] account: Add a new boolean_favorite widget
Purpose
=======

Projects and soon sales teams have a manual "favorite" button that calls a toggle_favorite method
It should actually be a widget on a boolean field

Specifications
==============

Develop a favorite widget for kanban view that allows to toggle a boolean field
Probably update boolean field to allow inverse method on it

Functionally nothing changed.
2017-08-09 15:11:53 +02:00
Christophe Simonis f69655829a [MERGE] forward port branch saas-11 up to acbcfa3703 2017-08-09 14:43:39 +02:00
Christophe Simonis 6a767a8900 [MERGE] forward port branch 9.0 up to 3d119c44f3 2017-08-09 13:57:30 +02:00
HIRAL BHAVSAR 4acec418ce [IMP] account: improve settings
* [IMP] account, account_accountant: Move 'tax_cash_basis_journal_id' field from 'account_accountant' to 'account' module.

* [IMP] account: Few improvements in accounting settings,
    - Set 'Invoicing' section as a last section.
    - Add checkbox 'Cash Basis' in settings and make it company dependent and add multi company's icon to it.
    - Disable the 'Tax Cash Basis Journal' field if 'Cash Basis' not active. Also add tooltip on 'Cash Basis'.
    - Visible/Invisible 'Use Cash Basis' field in 'Taxes' form view based on 'Cash Basis' settings from accounting settings.
    - Don't allow untick 'Cash Basis' settings if there are taxes using the configuration.
    - When any CoA is installed which is creating taxes with configuration 'Use Cash Basis' set then make the 'Cash Basis' option in accounting settings checked by default.

Was PR #16516
2017-08-09 10:45:57 +02:00
Mehta Kinjal 41d806eebf [IMP] account: Add stat button on taxes to archive them
+ set some taxes inactive for l10n_be

Was PR #18130
2017-08-09 10:19:45 +02:00
Thibault Delavallée c3c42658c5 [MERGE] (website_)portal: make customer portal independent from website
This merge make the customer portal available independently from website
module. This implies moving some routing features from website to a new
http_routing module. Customer portal is located in a new portal module.

Sale and account customer portal are moved directly into sale and account
module, and in sale_payment and account_payment for the online payment
part. Most of website_payment code is moved to payment as it holds
customer portal features related to payment.

This merge removes website_portal, website_portal_sale and website_account
module.

This closes #17100.
2017-08-08 16:43:09 +02:00
Goffin Simon a31820d0cb [FIX] account: Only 64 characters for the name of an entry
When creating a customer invoice with description/reference with more than
64 characters, the description was cut to generate the name of the account move
lines. But it's possible to create an entry with more than 64 characters as name
by the interface. The limitation is deprecated.

opw:760316
2017-08-08 15:54:41 +02:00
Thibault Delavallée 9456c7b332 [MOV][ADD] account_payment: move account related payment code to account_payment
This commit adds a new bridge module between account and payment. This
module is used notably to display payment related information on account
customer portal. It currently holds only a template but future commit
will add new features related to invoice payment on customer portal.
2017-08-08 15:38:04 +02:00
Thibault Delavallée 3836aac471 [MOV] account_*: move account customer portal to account
As already done for sale, customer portal for account is moved to account
module directly. Account now depends on portal module and website module
is not necessary anymore to display the account customer portal.
2017-08-08 15:36:32 +02:00
Dhaval Panchal 31e467598c [IMP] account: allow to reorder payment terms 2017-08-08 14:37:11 +02:00
qdp-odoo 792a402126 [FIX] account: fix tax_ids computation on aml creation from invoice.
In case of a tax affecting subsequent taxes, the tax_ids field was wrongly set which led to errors in VAT reports. OPW 757072.
2017-08-08 10:29:57 +02:00
Odoo Translation Bot 47d84fca1c [I18N] Update translation terms from Transifex 2017-08-06 07:14:52 +02:00
Odoo Translation Bot b5ce70e70e [I18N] Update translation terms from Transifex 2017-08-06 04:40:09 +02:00
Odoo Translation Bot af7eb04fc7 [I18N] Update translation terms from Transifex 2017-08-06 00:32:12 +02:00
Jigar Patel 65e810269a [IMP] website_sale, product: Improve product availability in ecommerc… (#14037)
* [IMP] product: Clean product form view

* [IMP] website_sale: Remove old availability functionality

* [IMP] website_sale: Fix to get attributes details

* [IMP] website_sale_stock: Add inventory availability
- Warning messages:
  - Don't show anything
  - Show inventory
  - Only show below a Threshold
  - Show a custom message
- Add Default Inventory availability option in website admin under product catalog setting
- Show inventory availability message based on variant
- Block add to cart if product not available in stock (Block if Show inventory or Only show below a Threshold option is selected)

* [IMP] website_sale_options: Prevent user to buy optional product if stock is not available

* [FIX] product,website_sale_stock: details

- Corrects the display of the image on the product form when selecting a pre-existing image.
It was displaying a template and not the pre-existing one.

[FIX] website_sale_stock: sale_order

Condition was set on linked_line_id which is pointless as we iterate on each line of the order.

[FIX] website_sale_stock: fix import

Change import to proper form: from . import

* [ADD] website_sale_stock: default threshold

- Add available_threshold in website_config_setting view.
- Fix availability and threshold values to be directly
  linked to product template instead of website config settings.
- Change custom_message to non-required.

* [ADD] Website_sale: Install checkbox for wbs_stock

-Add checkbox to install website sale stock as 'Inventory' in Website Settings
-Change 'Inventory Availability' to 'Inventory'
-Add help and tooltip for 'Inventory'

* [IMP] website_sale_stock: website product view

- Add Unit of measure in the stock information on the product page.
- rework get_attribute_value_ids method.

* [IMP] website_sale: Stock and Options

- bridge module to allow stock and options to interract together
- changes on the field names (follow pad), modifications.

* [FIX] product: revert on product_views and cleaning

Revert changes suggested on the task as it it scheduled on another one for a big clean-up.
Clean comments on code.

* [IMP] website_sale_stock: website product view

+[FIX] sale_stock: dependency
- changed strings and views for website and backend product view.

- change dependency of 'sale_management' to 'sale' in 'sale_stock'.
We don't actually need the sale menu when managing our stock. Sale if sufficient thix way.

* [FIX] website_sale_stock: triggers on js and ajax

The function inserting the avalability template in the web page was triggered by too much events,
this was triggering a problem with the deferred calls. This was raising an error in the website_sale_tour_buy test.

Now only change on data-attribute_value_ids will trigger the function. The test should run smoothly.

[FIX] website_sale, website_sale_stock: route tour_buy

- The improvements on the branch prevent a user to buy a product when there is no stock.
Adapted the route test to the new behaviour in order to add_cart/buy/pay a product.
--> now buying iPod (16Gb) instead of iPod (32 Gb)

- ajax.loadXML was called to often (each trigger of the function) and was making the runbot crash.
Only one call of the loadXML right now.
2017-08-04 14:57:25 +02:00
Lucas Perais (lpe) 2cd63aa2dc [FIX] account: reconciliation of payments and invoices, diff currencies and times
Use case:
- 2 invoices in foreign currencies, made at different times (and different exchange rates)
- 2 payments (same characteristics as invoices)
- allocate the 1st payment to inv A
- allocate the 2nd payment to inv A and then B so that A is fully paid, but B is not
- try to make the final payment on B to fully reconcile everything

Results (all in the payable account)
- let CB be the credit line of B
- let D2 be the debit line of 2nd payment
- let D3 be the debit line of the 3rd and final payment

Before this commit, the exchange difference computation dailed because:
- There were 2 amls that had an amount_residual and needed to be reconciled (CB and D2)
- Also, there was a structural flaw in the code that did not allow for multiple lines to have a residual

After this commit, we still make 1 move to log the exchange difference,
but we make exchange difference lines for each line that need to be reconciled: CB and D2

OPW 751710
Commit in master c36f70f6726e0c7ccca1002f78e4d402e27cae3d (2017-07-20)

Closes #18347

[FIX] account: testing partial and full reconciliation
2017-08-04 09:45:31 +02:00
Nicolas Martinelli 7cd2f63705 [FIX] *: cancel settings
To reproduce:
- Go Website Admin > Configuration > Settings
- Change the Website Name
- Click on 'Cancel'

The name is saved.

When the "Cancel" button is clicked, we automatically save the record
(which is a transient model). Since the field is a related to the
company, the name is changed even if we canceled.

opw-760749
2017-08-04 08:25:33 +02:00
Lucas Perais (lpe) ef39b3d9e4 [FIX] account: bank_statement: journal accounts not required in reconciliation widget
Use case: click on "reconcile X items" on a journal which doesn't have its default credit or debit account set.
Result: Before this commit, a useless traceback popped to the user.
After this commit, move lines are searched without taking into account the journal's default accounts for debit or credit

OPW 760305

Closes #18485
2017-08-03 09:54:47 +02:00
Benjamin Willig f32b8acb2c [FIX] account: performance on manual reconciliation
Avoid reconciled move lines selection during manual reconciliation

Closes #18435
opw-756956
2017-08-02 15:51:47 +02:00
Christophe Simonis fcfb4782b6 [MERGE] forward port branch saas-17 up to a445548f07 2017-08-02 12:31:05 +02:00
Christophe Simonis 072411b336 [MERGE] forward port branch saas-16 up to 8d89148d13 2017-08-02 01:08:42 +02:00
Christophe Simonis 8d89148d13 [MERGE] forward port branch saas-15 up to 5e19f28bfc 2017-08-01 23:11:27 +02:00
Christophe Simonis 5e19f28bfc [MERGE] forward port branch saas-14 up to d0ece6cd89 2017-08-01 23:07:22 +02:00
Christophe Simonis d0ece6cd89 [MERGE] forward port branch 10.0 up to afd4b68acc 2017-08-01 23:06:43 +02:00
Christophe Simonis 6990c28d05 [MERGE] forward port branch saas-16 up to a42b056ca9 2017-08-01 18:00:22 +02:00
Goffin Simon 39892cdaa1 [FIX] account: Only 64 characters for the name of an entry
When creating a customer invoice with description/reference with more than
64 characters, the description was cut to generate the name of the account move
lines. But it's possible to create an entry with more than 64 characters as name
by the interface. The limitation is deprecated.

opw:760316
2017-08-01 17:14:28 +02:00
rar-odoo 435c2eae19 [FIX] Account: account_field field typo
the field data-max is supposed to be stored in the database.
Currently, the arg is 'stored=True' which is not recognised by the orm.
This fix ensures the field is correctly sotred and thus not computed at reading.
2017-08-01 12:46:29 +02:00
Odoo Translation Bot 90282fa2d5 [I18N] Update translation terms from Transifex 2017-07-30 07:14:49 +02:00
Odoo Translation Bot b1e79e85bd [I18N] Update translation terms from Transifex 2017-07-30 04:40:00 +02:00
Odoo Translation Bot 6493dc9837 [I18N] Update translation terms from Transifex 2017-07-30 00:32:09 +02:00
Dhaval Panchal a436645ae8 [IMP] l10n_*: Uniformize the reporting menuitems order and labels
Purpose
=======

Accounting reports are quite confusing for an accountant as the menuitems doesn't to have a clear structure.

Specifications
==============

Move all the localizations menuitems to the first position under `Reporting`

Put the `US GAAP` report menuitem items under the localizations and rename it accordingly
2017-07-27 11:39:52 +02:00
Hiral Bhavsar a8a9dbe598 [IMP] account: Correct the settings display according to the enabled options
PURPOSE
=======

Clean accounting new settings.

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

- When a setting is not active, I don't want to see the green arrow sending back to the configuration part.
  Example : If I unactivate the follow-up levels, I don't want to see the green arrow "Follow-up levels" anymore
- Add checkbox to 'TaxCloud Connection'
- Also visible the label 'Fiscal Localization' and its text only if CoA is not set.
- Set '# of digits' always visible and relabel to '# of digits on accounts'. Also put it inside new setting 'Chart of Accounts'.
2017-07-27 11:31:26 +02:00
Christophe Simonis 8a1311bca1 [MERGE] forward port branch saas-17 up to 3d4238f71e 2017-07-26 23:35:06 +02:00
Christophe Simonis 4f501348c4 [MERGE] forward port branch saas-16 up to 46e1104ce1 2017-07-26 19:55:44 +02:00