If you have defined several contract lines, each one with their
recurrency information, unmarking the check "Line recurrency" by mistake
and saving will make you lose the configuration in one shot, and also
modify the invoceability conditions.
Thus, it's reasonable to avoid to uncheck the mark once you have at
least one invoice issued for a contract with this mark checked.
TT47015
I have detected a method that was created as redundant and with the same
technique used when preparing the line values, so better to have
everything together in the same method instead of having it spread.
**Steps to reproduce the problem**
- Define a contract template with one line with variable quantity and formula.
- Use that template in a new contract.
- Variable quantity type and formula are not transferred from template to contract.
This is due to the lack of that fields in the tree view that prevents web client to fetch
and store them.
We solve it adding those fields to the contract line tree view, also providing some
visibility logic for not showing the corresponding fields according the type.
No regression tests is provided, as this is only reproducible with web client, not through
code.
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)
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.