Odoo Studio 无代码自定义指南:字段、视图、自动化和报告
Odoo Studio 是 Odoo Enterprise 中内置的无代码定制平台。它允许业务用户添加字段、修改视图、创建自动化操作以及构建报告,而无需编写一行 Python 或 XML。对于需要超出 Odoo 默认配置的自定义但希望避免自定义开发的成本和复杂性的组织来说,Studio 是开箱即用和完全自定义之间的桥梁。本指南通过实际示例涵盖了 Studio 的每项功能。
要点
- Odoo Studio 包含在 Odoo Enterprise 中,无需额外付费
- 在 Studio 中创建的自定义字段、视图和自动化在 Odoo 升级中保留
- Studio 支持超过 15 种字段类型,包括计算字段、相关字段和 HTML 字段
- 自动操作可以在记录创建、更新、时间条件或外部 Webhook 时触发
- 自定义报告使用带有拖放布局编辑功能的 QWeb 模板
访问 Odoo Studio
Studio 可供在 Odoo Enterprise 中具有管理员访问权限的用户使用。单击顶部菜单栏中的扳手图标可切换 Studio 模式。启用后,Odoo 中的每个视图都会显示用于自定义字段、布局和行为的编辑控件。
Studio 修改是全局性的——更改适用于所有用户(不仅仅是当前用户)。使用访问权限来控制哪些用户组可以查看自定义字段和视图。
自定义字段
添加字段
在 Studio 模式处于活动状态时,单击任何字段组旁边的 + 按钮以添加新字段:
| 字段类型 | 描述 | 用例示例 |
|---|---|---|
| 文字 | 单行文本输入 | 客户参考号 |
| 多行文本 | 多行文本区域 | 内部注释、描述 |
| 整数 | 整数 | 数量、数量 |
| 浮动 | 十进制数 | 测量值,百分比 |
| 货币 | 货币格式的号码 | 报关费、附加费 |
| 日期 | 日期选择器 | 自定义截止日期、审核日期 |
| 日期时间 | 日期和时间选择器 | 预约时间、SLA 截止日期 |
| 布尔 | 真/假复选框 | 批准标志、功能切换 |
| 选择 | 下拉列表 | 状态、类别、优先级 |
| 多对一 | 链接到另一条记录 | 相关项目,指定仓库 |
| 多对多 | 多个记录链接 | 标签、相关产品 |
| 一对多 | 相关记录的内嵌列表 | 自定义订单项 |
| HTML | 富文本编辑器 | 格式化说明、模板 |
| 二进制 | 文件上传 | 附件、文件 |
| 图片 | 带预览的图片上传 | 产品照片、签名 |
计算字段
创建自动计算其值的字段:
1.添加一个新字段并在属性中选择计算 2.使用Odoo的域语法编写计算表达式 3.设置依赖关系(改变时触发重新计算的字段)
示例:销售订单上的“总重量”字段,用于汇总所有订单行的重量。计算引用 order_line.product_id.weight * order_line.product_uom_qty 并在订单行更改时重新计算。
相关领域
无需自定义代码即可从链接记录中提取数据:
1.添加新字段并在属性中选择相关
2. 通过关系指定路径(例如,partner_id.country_id.name)
3. 字段显示相关记录的数据并自动更新
示例:通过创建 partner_id.country_id.name 后面的相关字段,在销售订单表单上显示客户所在的国家/地区。
查看自定义
表单视图
通过以下方式自定义表单布局:
- 添加字段:将字段从字段列表拖至所需位置
- 创建组:使用可选的列布局将相关字段组织到带标签的组中
- 添加笔记本:创建用于组织大型表单的选项卡式部分
- 条件可见性:根据条件显示或隐藏字段(例如,仅当状态为“拒绝”时才显示“原因”字段)
- 必填字段:在特定条件下使字段成为必填字段
- 只读规则:根据记录状态锁定字段
列表视图
通过以下方式自定义列表(树)视图:
- 添加列:拖动字段以添加列
- 重新排序列:拖动列标题重新排列
- 列宽:设置固定或比例宽度
- 条件格式:根据字段值对行进行颜色编码
- 默认排序:设置默认排序列和方向
- 分组:配置默认分组依据字段
看板视图
定制看板:
- 卡字段:选择卡面上显示的字段
- 卡片颜色:根据优先级、状态或自定义规则对卡片进行颜色编码
- 进度条:在卡片上显示完成百分比
- 快速创建:启用从看板列内联创建新记录
日历、数据透视表和图表视图
Studio还支持定制:
- 日历视图:将日期字段映射到日历事件
- 数据透视表:配置默认度量、行和列以进行分析
- 图表视图:设置默认图表类型(条形图、折线图、饼图)和数据维度
自动操作
动作类型
导航到 设置 > 技术 > 自动操作(或使用 Studio 的自动化选项卡):
| 触发 | 当它开火时 | 示例 |
|---|---|---|
| 论创作 | 当创建新记录时 | 向新联系人发送欢迎电子邮件 |
| 更新中 | 当指定字段发生变化时 | 当优先级增加时通知经理 |
| 关于创建和更新 | 两个触发器结合 | 更新任何变更的相关记录 |
| 根据时间条件 | 按计划的时间间隔匹配记录 | 在截止日期前 3 天发送提醒 |
| 基于定时条件 | 字段更改延迟后 | 报价发送后 48 小时内跟进 |
行动成果
每个自动化可以执行一个或多个操作:
- 更新记录:更改当前记录上的字段值
- 创建记录:在任何模型中生成新记录
- 发送电子邮件:使用带有动态字段的电子邮件模板
- 发送短信:将短信发送到电话号码字段
- 执行Python代码:为复杂逻辑运行自定义Python(高级)
- 添加关注者:为用户订阅通知记录
- 创建活动:为用户安排后续活动
实用自动化示例
自动分配区域经理:创建新潜在客户时,检查州/国家/地区字段并自动分配区域销售经理。
截止日期提醒:在项目任务截止日期前三天,向受让人发送电子邮件并创建高优先级活动。
审批通知:当采购订单超过10,000美元时,将状态更改为“需要审批”并通知财务经理。
客户入职:确认销售订单后,创建一个包含入职任务的项目并分配客户成功经理。
自定义报告
报告生成器
Studio 包括一个可视化报告设计器:
- 导航到任意列表视图,然后单击 Studio 工具栏中的 报告
- 选择报告模板(空白、表格或标签)
- 将字段拖放到报告布局上
- 配置页眉、页脚和分组
- 使用实时数据预览报告
报告元素
| 元素 | 描述 | 使用案例 |
|---|---|---|
| 领域 | 动态数据记录 | 客户名称、订单总额 |
| 表 | 行项目的表格布局 | 订单行、发票详细信息 |
| 组标题 | 带聚合的分节符 | 按类别分组并带有小计 |
| 图片 | 动态或静态图像 | 公司标志、产品图片 |
| 条码 | 根据现场数据生成 | 订单参考条形码 |
| 二维码 | 根据现场数据生成 | 支付链接二维码 |
| 条件部分 | 根据数据显示/隐藏 | 仅当折扣存在时才显示折扣部分 |
PDF 输出
报告生成为 PDF 文档。在报告设置中配置纸张尺寸、边距和方向。报告可以是:
- 直接从记录打印
- 附加到电子邮件
- 保存到文档模块
- 批量生成多条记录
审批工作流程
建立审批链
将 Studio 的自动化操作与自定义字段相结合以创建审批工作流程:
- 添加状态字段:选择字段,其值为“草稿”、“待批准”、“已批准”、“已拒绝”
- 添加审批者字段:链接到每个审批级别的用户的 Many2one 字段
- 创建自动化:当状态更改为“待批准”时,向审批者发送电子邮件
- 添加审批按钮:授权审批者单击时会更改状态的智能按钮
- 添加条件:当状态为“已批准”时,使某些字段只读
多级批准
对于需要多个审批级别的流程:
| 水平 | 审批人 | 状况 | 批准后采取行动 |
|---|---|---|---|
| 1 级 | 部门经理 | 金额 > 1,000 | 移至 2 级 |
| 2 级 | 财务总监 | 金额 > 10,000 | 移动到 3 级 |
| 3 级 | 首席执行官 | 金额 > 50,000 | 标记为已批准 |
工作室最佳实践
何时使用 Studio 与自定义开发
| 场景 | 推荐 |
|---|---|
| 添加一些自定义字段 | 工作室 |
| 修改视图布局 | 工作室 |
| 简单的自动化(电子邮件、现场更新) | 工作室 |
| 自定义报告布局 | 工作室 |
| 复杂的业务逻辑 | 定制开发 |
| 新模块/型号 | 定制开发 |
| 外部API集成 | 定制开发 |
| 性能关键型操作 | 定制开发 |
升级安全
Studio 自定义与核心 Odoo 代码分开存储。它们通过版本升级持续存在,尽管当底层模型发生变化时可能需要进行一些调整。记录所有 Studio 自定义,以便在升级规划期间进行审查。
性能考虑因素
- 计算字段在每次记录访问时重新计算——避免对频繁访问的记录进行复杂的计算
- 自动操作在每个匹配事件上触发——使用特定条件来防止不必要的执行
- 频繁加载的表单上的 One2many 字段会影响页面加载时间
ECOSIRE 工作室服务
虽然 Studio 可以处理许多定制需求,但组织通常会受益于有关定制内容和定制方式的专家指导。 ECOSIRE 的 Odoo 定制服务 包括针对简单需求的基于 Studio 的定制以及针对复杂需求的定制模块开发。我们的咨询服务 帮助组织确定满足每种定制需求的最佳方法。
相关阅读
Odoo Studio 是否在 Odoo 社区版中可用?
不需要。Odoo Studio 是一项仅限企业使用的功能,企业订阅无需额外付费。社区版用户可以通过自定义模块开发来实现类似的定制,但这需要Python和XML编码知识。
Studio 自定义可以导出并在 Odoo 实例之间重复使用吗?
是的。 Studio 自定义内容存储为可以导出为 ZIP 文件的模块。该模块可以安装在另一个 Odoo 实例上,从而可以在临时环境中开发自定义并部署到生产环境,或者跨多个数据库复制配置。
Studio 自定义会影响系统性能吗?
较小的自定义(额外字段、视图更改)的影响可以忽略不计。引用大型数据集的计算字段、频繁触发的自动化操作以及复杂的报告模板可能会影响性能。监视每个自定义的效果,并在性能下降时进行优化或转换为自定义代码。
作者
ECOSIRE Research and Development Team
在 ECOSIRE 构建企业级数字产品。分享关于 Odoo 集成、电商自动化和 AI 驱动商业解决方案的洞见。