跳转到主要内容

跟踪更改集记录

项目描述

Alpha License: AGPL-3 OCA/server-tools Translate me on Weblate Try me on Runboat

此模块扩展了记录的功能。它允许创建更改集,在修改记录时必须验证更改集,而不是直接修改。规则允许配置哪些字段必须验证。

什么是更改集

更改集是在记录上进行的更改列表。

其中一些更改可能是“挂起”、“接受”或“拒绝”,具体取决于更改集规则。挂起更改需要审批用户交互:只有当该更改获得批准时,其值才会写入记录。

目录

配置

访问权限

更改集规则必须由具有“更改集配置”组的用户编辑。更改集只能由具有“更改集验证”组的用户应用或取消。

更改集规则

可以在“配置 > 记录更改集 > 字段规则”中配置更改集规则。

  • 规则的配置

    https://raw.githubusercontent.com/OCA/server-tools/14.0/base_changeset/static/src/img/rules.png

对于每个记录字段,可以定义一个操作

  • 自动:此字段上的更改总是应用

  • 验证:此字段上的更改必须由“更改集用户”用户手动确认

  • 永不:此字段上的更改总是拒绝

无论如何,用户所做的所有更改都始终直接应用于用户,但为了历史记录,会创建一个“已验证”的更改集。

支持的字段有

  • 字符

  • 文本

  • 日期

  • 日期时间

  • 整数

  • 浮点数

  • 货币

  • 布尔值

  • 多对一

规则可以是全局的(无源模型)或由源模型配置。源模型的规则具有优先级。如果一个字段未配置源模型,则将使用全局规则(如果存在)。

如果一个字段没有规则,则在不创建更改集的情况下将其写入记录。

用法

更改集规则

第一步是配置更改集规则。一旦完成,对记录的写入将作为更改集创建。

处理更改集

所有更改集的列表在 配置 > 记录更改集 > 更改集 中。

默认情况下,仅显示待验证的更改集(等待验证)。移除“待处理”过滤器以显示所有更改集。

  • 等待验证的更改集

    https://raw.githubusercontent.com/OCA/server-tools/14.0/base_changeset/static/src/img/changeset.png

更改视图显示记录字段的名称、原始值和新值以及更改的状态。在某些情况下,单击更改可以显示更详细的信息,例如可以单击关系的链接。

更改集上的按钮允许一次应用或拒绝所有更改。

处理单个更改

访问更改集可以全面了解所做的所有更改。然而,直接从记录访问单个更改更方便。如果有字段的待处理更改,您会得到一个带有待处理更改数的徽章,如下所示

  • 带有待处理更改数的徽章

    https://raw.githubusercontent.com/OCA/server-tools/14.0/base_changeset/static/src/img/badge.png

当您单击它时

  • 单击徽章:红色按钮拒绝,绿色按钮应用

    https://raw.githubusercontent.com/OCA/server-tools/14.0/base_changeset/static/src/img/badge_click.png

单击红色按钮拒绝更改,单击绿色按钮应用它。

在您的扩展中自定义源规则

希望使用自己的规则创建更改集的扩展应在写入记录时通过上下文传递以下键

  • __changeset_rules_source_model:请求更改的模型的名称

  • __changeset_rules_source_id:请求更改的记录的ID

此外,它们应该扩展 ChangesetFieldRule._domain_source_models 中的选择,以添加它们的模型(与在 __changeset_rules_source_model 中传递的相同)。

源用于规则的适用,允许对不同源有不同的规则。它还存储在更改集中以供信息。

安全注意事项

请注意,默认情况下,更改集用户可以看到所有配置规则的更改。这绕过了原始记录的读取限制,因此如果您对具有更改集规则的模型有限制,则更改集用户仍然可以看到所有记录的所有更改,并且对不可访问的记录应用更改将失败。

已知问题/路线图

  • 实际支持的字段类型仅为子集

  • 多公司不支持完整

错误跟踪器

错误在 GitHub Issues 上跟踪。如果在那里有问题,请检查是否已报告该问题。如果您是第一个发现它的,请通过提供详细和受欢迎的 反馈 来帮助我们解决问题。

请勿直接联系贡献者以获取支持或技术问题的帮助。

鸣谢

作者

  • Onestein

  • Camptocamp

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛使用。

当前维护者

astirpe

此模块是GitHub上OCA/server-tools项目的组成部分。

欢迎您贡献力量。有关如何贡献的信息,请访问https://odoo-community.org/page/Contribute

项目详情


发布历史 发布通知 | RSS订阅

下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包的信息

源代码发行版

此版本没有可用的源代码发行版文件。请参阅有关 生成发行版归档 的教程。

构建发行版

odoo14_addon_base_changeset-14.0.2.0.2-py3-none-any.whl (317.0 kB 查看哈希值)

上传于 Python 3

由以下机构支持