Hi guys,
I've extended the ability to automatically generate invoices from contracts. In the contracts page I've added the ability to add cars to contracts and on this car you can set a tax. See an example image here.
The cars field is a many2one to fleet.vehicle and inside this many2one I have a many2many relation to account.tax.
Python code:
_columns = { 'car_id': fields.many2one('fleet.vehicle', 'Cars'), 'car_line_tax_id': fields.many2many('account.tax', 'account_car_line_tax', 'car_line_id', 'tax_id', string='BTW')
I now add a car to the car_id many2one and fill in a tax (for example: VAT-OUT-21-SERVICES). I then run the automatic planner which triggers a Python method that generates concept invoices from the contracts:
def _prepare_invoice_lines(self, cr, uid, contract, fiscal_position_id, context=None): //Lots of irrelevant code. //Loop over all cars that are added to the car_id list. for line in contract.recurring_invoice_car_line_ids: //Add every car to the invoices_lines invoice_lines.append((0, 0, { //Fill up the fields 'quantity': line.car_number_of_units or 0.0, 'price_unit': line.car_rent_price or 0.0, //This line isn't working well. I know the filled in tax is in car_line_tax_id but it doesn't get filled in on the invoice.
'invoice_line_tax_id': line.car_line_tax_id,
So everything works fine except 'invoice_line_tax_id': line.car_line_tax_id. For some reason the tax doesn't get filled in in account.invoice.form on the field invoice_lines_tax_id. You can see an example here from both screens.
Why is this? Did I do something wrong or?
Thanks,
Yenthe