简介
该模块扩展了报告的功能,支持创建额外的自定义报告。它允许用户编写自定义 SQL 请求。(一般为管理员用户)编写自定义SQL请求后,将生成一个新模型,用户可以将所选字段与 odoo 字段进行映射。然后用户结束这个进程,创建新的菜单、动作和图形视图。
从技术上讲,该模块创建 SQL 视图(或物化视图,需要在物化视图选项打勾)。虽然物化视图会复制数据,但请求最快。如果启用物化视图,该模块将创建一个 cron 任务来刷新数据)。
默认情况下,“SQL 请求/用户”的用户成员可以看到所有视图。可以指定有权访问特定视图的额外组。
BI SQL Editor的典型应用场景
- 想实现技术性 SQL 请求,而 Odoo 框架不允许(例如,具有多个 SELECT 的 UNION)典型用例
- 想自定义一个 Odoo 报告,删除一些无用的字段并添加一些自定义字段。在这种情况下,您只需选择原始报告的字段(例如,sale.report 模型),然后添加您的自定义字段
- 有大量数据,而经典 SQL 视图的性能非常差。在这种情况下,MATERIALIZED VIEW(物化视图) 将是减少显示持续时间的一个很好的解决方案
安装
下载解压后,包含两个插件,其中sql_request_abstract是bi_sql_editor所依赖的,如果从其他地址下载的BI SQL Editor,可能不带依赖插件sql_request_abstract,所以需要自己去下载该插件,下载链接
将上面两个文件夹复制到odoo框架addons_path中配置的路径下
开启odoo服务进入web页面,开启debug模式,刷新本地应用列表,然后将两个插件依次安装,先安装sql_request_abstract,然后再安装bi_sql_editor,因为后者依赖于前者
打开
在web页面的设置选项中找到技术--数据库结构--sql views 要开启debug模式
使用
进入SQL Views后,点击新建,来到DRAFT(草稿)状态
下图SQL语句中,login是列名,x_login是别名
需要注意的是
- 必须有别名
- 别名可以用as来修饰,也可以省略
- 别名的前缀必须是x_,如果不是预览时也会报错
- odoo模型名称(表名)的各个单词之间用“.”,连接,数据库中或者在进行SQL编写时,用下划线连接。
- 例如odoo中,res.users
-
sql语句或者数据库中,res_users
报错
权限设置
在安全选项中选择可以访问视图的组或用户,还可以自定义权限规则
状态(步骤)
创建视图分为四个状态,状态也可理解为四个步骤,我们点击新建后进入的第一个状态是DRAFT,草稿状态
第一个状态(步骤)DRAFT
草稿状态(DRAFT)主要填充sql语句、是否需要物化视图以及权限的设置,点击左上角 validate sql expression 按钮,对SQL语句进行检查,SQL语句没问题的话会来到下一个状态SQL Valid
第二个状态(步骤)SQL Valid
对于每个字段,您可以决定创建一个索引并设置它是否将作为列、行或度量显示在数据透视图上,点击左上角 CREATE SQL VIEW,INDEXS AND MODELS 进入第三个状态
第三个状态(步骤)SQL VIEW AND MODEL CREATED
这一步可以直接点击左上角create UI 完成视图创建
第四个状态(步骤)VIEWS,ACTION AND MENUE CREATED
视图创建完成,可以通过点击OPEN VIEW来查看视图
视图的查看方式有很多,柱状图、折线图、饼状图、堆叠、列表等查看方式
删除
创建完毕的视图无法直接删除,需要先设置为DRAFT(草稿状态),才可以删除
点击视图进入详情,在左上角可以将其状态设置为DRAFT