class example_report(models.AbstractModel): _name = 'report.module_name.report_my_custom_report' @api.multi def render_html(self,data=None): report_obj = self.env['report'] report = report_obj._get_report_from_name('module_name.report_my_custom_report') # your report data structure goes in data_array data_array = [] docargs = { 'hold_data_array':data_array, } # here we will pass the report data into our report template return report_obj.render('module_name.report_my_custom_report', docargs)