Hello, I want to inherit the hr.expense and change the existing fields.
for example, I want the tax_ids field (Many2many) to be limited to 1. The user can only select one tax type.
Also, how can I set the default account for the expense. I want to set a particular account for expenses that I have created in the chart of accounts to be the default one for my model
Please help me on this
Thank you
Odoo is the world's easiest all-in-one management software.
 It includes hundreds of business apps:
- 客戶關係
- e-Commerce
- 會計
- 庫存
- PoS
- Project
- MRP
此問題已被標幟
Hi
You can use api.constrains decorator, it will help to limit the tax to 1
check the following code
class HrExpense(models.Model):
_inherit ='hr.expense'
@api.constrains('tax_ids')
def _check_tax_ids_lines(self):
for record in self:
if len(record.tax_ids) > 1:
raise ValidationError('You can have only one tax.')
Regards
Thank you!
Hi,
To assign a default expense account, add a default attribute to the corresponding field, and add constraints for tax fields to prevent adding more than one tax to form.
class HrExpense(models.Model):
    _inherit ='hr.expense'
def _default_account_id(self):
    return self.env['account.account'].search([
        ('account_type', 'not in', ('asset_receivable', 'liability_payable', 'asset_cash', 'liability_credit_card')),
        ('company_id', '=', company_id)], limit=1).id
account_id = fields.Many2one( 'account.account',  compute='_compute_account_id',store=True,
    readonly=False,  precompute=True,  string='Account',   default=_default_account_id,
 
   domain="[('account_type', 'not in', ('asset_receivable', 
'liability_payable', 'asset_cash', 'liability_credit_card')), 
('company_id', '=', company_id)]",   help="An expense account is 
expected" )
@api.constrains('tax_ids')
def _check_tax_ids(self):
    for record in self:
        if len(record.tax_ids) > 1:
            raise ValidationError('You can add only one tax.')
Hope it helps,
| 相關帖文 | 回覆 | 瀏覽次數 | 活動 | |
|---|---|---|---|---|
|  | 2 7月 24  | 2244 | ||
|  | 2 1月 21  | 6555 | ||
|  | 1 7月 19  | 7152 | ||
|  | 3 6月 15  | 6126 | ||
|  | 0 2月 21  | 4323 | 
