I need some help. I am Odoo 17. I just wanto to create a pdf report for this specific records: orders_with_pending_vehicles
import base64
from odoo import api, fields, models
from odoo.addons.phone_validation.tools import phone_validation
from odoo.exceptions import ValidationError
class SaleOrderInherit(models.Model):
_name = 'service.order.wsp'
partner_id = fields.Many2one('res.partner')
def send_offers(self):
if not self:
a = self.search([], limit = 1)
if a:
self = a
else:
self.create([])
offers_available = self.env['sale.order'].search([
('service_order', '=', True),
('state', '=', 'sale'),
])
orders_with_pending_vehicles = offers_available.filtered(
lambda order: any(prog.number_vehicles > prog.send_vehicles for prog in order.programming))
orders_with_pending_vehicles_ids = orders_with_pending_vehicles.mapped('id')
if orders_with_pending_vehicles:
drivers = self.env['res.partner'].search([('is_driver', '=', True)])
report_action = self.env.ref('transport_whatsapp.action_wsp_offers_available_report').report_action(orders_with_pending_vehicles)
report = self.env.ref('transport_whatsapp.action_wsp_offers_available_report')._render_qweb_pdf(orders_with_pending_vehicles_ids)
b64_pdf = base64.b64encode(report[0])
attachment = self.env['ir.attachment'].create({
'name': 'Reporte_Ordenes_Pendientes.pdf',
'type': 'binary',
'datas': b64_pdf,
'res_model': 'service.order.wps',
'res_id': self.id,
'mimetype': 'application/pdf'
})
But it gives me this error:
ValueError: : "'dict' object has no attriute 'split'" while evaluating 'model.send_offers()'