基于自定义SQL的报告
来自Odoo大V社-odoo中文开发手册
2355481564(讨论 | 贡献)2018年1月19日 (五) 09:29的版本 (创建页面,内容为“我们所建的报告是建立在常规记录的基础上的。但在某些情况下,在呈现报表时,我们需要以不易处理的方式转换或聚合动态数...”)
我们所建的报告是建立在常规记录的基础上的。但在某些情况下,在呈现报表时,我们需要以不易处理的方式转换或聚合动态数据.
一种方法是编写一个SQL查询来构建我们需要的数据集,通过一个特殊的模型公开这些结果,并使我们的报告在这个记录集上工作。
因此,我们需要创建一个包含以下代码的文件reports/todo_task_report.py:
# -*- coding: utf-8 -*- from odoo import models, fields class TodoReport(models.Model): _name = 'todo.task.report' _description = 'To-do Report' _sql = """ CREATE OR REPLACE VIEW todo_task_report AS SELECT * FROM todo_task WHERE active = True """ name = fields.Char('Description') is_done = fields.Boolean('Done?') active = fields.Boolean('Active?') user_id = fields.Many2one('res.users', 'Responsible') date_deadline = fields.Date('Deadline')