I'd like to set conditional deletion on my one2many tree.
Static solution works perfect:
<tree string="My Tree" delete="false">
but I can't find a solution to set it dynamically ie. if invoice type equals 'out_refund' than delete="false", else delete="true"
I think another solution is to define an unlink method in that class. Here I think, you need to inherit the account.invoice class and define the unlink method.
_inherit = "account.invoice"
for rec in self:
if rec.type == 'out_refund':
raise UserError(_('You cannot delete these type of invoices!'))
return super(AccountInvoice, self).unlink()
This will allow deletion of records only after checking the condition.
Hope this helps.
Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!
About This Community
|Asked: 5/3/16, 4:25 PM|
|Seen: 342 times|
|Last updated: 5/5/16, 4:32 PM|