跳转到主要内容

跟踪变更集记录

项目描述

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

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

什么是变更集

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

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

目录

配置

访问权限

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

变更集规则

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

  • 规则配置

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

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

  • 自动:此字段上所做的更改始终应用

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

  • 永远:对此字段的更改始终被拒绝

在任何情况下,用户所做的所有更改都直接应用于用户,但会为历史记录创建一个“已验证”的更改集。

支持的字段包括

  • 字符

  • 文本

  • 日期

  • 日期时间

  • 整数

  • 浮点数

  • 货币

  • 布尔

  • 多对一

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

如果字段没有规则,则将不创建更改集而直接写入记录。

用法

更改集规则

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

处理更改集

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

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

  • 待验证的更改集

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

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

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

处理单个更改

访问更改集可以全面了解所有更改。然而,直接从记录访问单个更改更方便。如果有字段的待处理更改,则在其旁边显示带有待处理更改数的徽章,如下所示

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

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

当您单击它时

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

    https://raw.githubusercontent.com/OCA/server-tools/12.0/base_changeset/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

项目详情


下载文件

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

源代码分发

此版本没有提供源代码分发文件。有关生成分发存档的教程,请参阅生成分发存档

构建分发

odoo12_addon_base_changeset-12.0.1.1.2-py3-none-any.whl (273.2 kB 查看哈希值)

上传时间 Python 3

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面