Commit Graph

9 Commits

Author SHA1 Message Date
sbejaoui
b266d14d73 [IMP] Adapt unit test 2022-11-03 12:29:58 +01:00
sbejaoui
c675d78682 [MIG] contract_variable_quantity: Migration to 12.0 2022-11-03 12:29:58 +01:00
Dmytro Katyukha
5d30321298 [FIX] analytic invoice/contract lines inheritance
Bug description
---------------

`account.analytic.contract.line` inherits
`account.analytic.invoice.line`

`account.analytic.invoice.line` defines field `analytic_account_id`:
   - comodel='account.analytic.account'

`account.analytic.contract.line` redefines field `analytic_account_id`:
   - comodel='account.analytic.contract'

On attempt to extend `account.analytic.invoice.line` model adding
field that depends on `analytic_account_id.date_start`
Odoo fails to update, because it adds this field to
`account.analytic.contract.line` through inheritance,
and `account.analytic.contract` model have no this field.

What is done
------------

Change inheritance order:
- `account.analytic.invoice.line` inherits
`account.analytic.contract.line`
- no file renames at this stage (this wil be done in next commit)
2022-11-03 12:29:58 +01:00
Pedro M. Baeza
cda52c9e8e [IMP] contract_variable_quantity: Recompute price when changing qty
If you have contract lines with automatic price and your pricelist
contains different prices per quantity, the price is not changed
when computing quantity.

This PR fixes this.
2022-11-03 12:29:58 +01:00
Pedro M. Baeza
67b7449546 [IMP] contract_variable_quantity: Make name translatable 2022-11-03 12:29:58 +01:00
Carlos Dauden
0a40701461 [IMP] contract_variable_quantity: Add option to don't create zero qty invoice lines 2022-11-03 12:29:58 +01:00
Carlos Dauden
be082b26b5 [MIG] contract_variable_quantity: Migration to 11.0 2022-11-03 12:29:58 +01:00
Dave Lasley
345be4a3ca [MIG] contract_variable_quantity: Migrate to v10
* Bump version
* Change openerp references to odoo
* Installable to True
* Change permissions & views to accounting dependency
2022-11-03 12:29:58 +01:00
Pedro M. Baeza
cacb80cc08 [ADD] contract_variable_quantity:
=================================================
Variable quantity in contract recurrent invoicing
=================================================

With this module, you will be able to define in recurring contracts some
lines with variable quantity according a provided formula.

Configuration
=============

* Go to Sales > Configuration > Contracts > Formulas (quantity).
* Define any formula based on Python code that stores at some moment a
  float/integer value of the quantity to invoice in the variable 'result'.

  You can use these variables to compute your formula:

  * *env*: Environment variable for getting other models.
  * *context*: Current context dictionary.
  * *user*: Current user.
  * *line*: Contract recurring invoice line that triggers this formula.
  * *contract*: Contract whose line belongs to.
  * *invoice*: Invoice (header) being created.

Usage
=====

To use this module, you need to:

* Go to Sales -> Contracts and select or create a new contract.
* Check *Generate recurring invoices automatically*.
* Add a new recurring invoicing line.
* Select "Variable quantity" in column "Qty. type".
* Select one of the possible formulas to use (previously created).
2022-11-03 12:29:58 +01:00