I need help about report from wizard in odoo 11.
In form wizard Includes three fields: date_start , date_end , partner_id.
I want name partner selected in wizard form display in report pdf. but in report displayed In the form of res.partner(9,).
python code:
from datetime import datetime, timedelta
from odoo import models, fields, api, _ from odoo.tools import DEFAULT_SERVER_DATE_FORMAT as DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT as DATETIME_FORMAT import re import datetime
class ExpertRecapReportWizard(models.TransientModel): _name = 'expert.recap.report.wizard'
partner_id = fields.Many2one('res.partner') date_start = fields.Date(string="Start Date", required=True, default=fields.Date.today) date_end = fields.Date(string="End Date", required=True, default=fields.Date.today) @api.multi def get_report(self): data = { 'ids': self.ids, 'model': self._name, 'form': { 'date_start': self.date_start, 'date_end': self.date_end, 'partner_id': self.partner_id, }, }
return self.env.ref('custom_report_expert.recap_report_expert').report_action(self, data=data)
class ReportexpertRecap(models.Model): _name = 'report.custom_report_expert.product_recap_report_view'
def _get_idexpert(self,partner_id):
sql = """ select name from res_partner where id=%s """ %(partner_id) self.env.cr.execute(sql) return self.env.cr.dictfetchone() @api.model def get_report_values(self, docids, data=None): date_start = data['form']['date_start'] date_end = data['form']['date_end'] partner_id = data['form']['partner_id'] docs = [] return { 'doc_ids': partner_id, 'doc_model': self.env['res.partner'], 'data': data, 'date_start': date_start, 'date_end': date_end, 'partner_id': partner_id, 'get_idexpert': self._get_idexpert, }
|
in template xml:
<span t-esc="get_idexpert(partner_id)"/>
output in report: res.partner(9,)
please help me.
Hi Akshay, <span t-esc="get_idexpert(partner_id).name"/> has error:
Error to render compiling AST
ProgrammingError: syntax error at or near ")"
LINE 2: where id=res.partner(9,)
try to display directly like <span t-esc="partner_id.name"/>