跳转到主要内容

为任何模型生成条码

项目描述

Beta License: AGPL-3 OCA/stock-logistics-barcode Translate me on Weblate Try me on Runboat

本模块扩展了Odoo的功能,允许用户根据给定的条码规则为任何模型生成条码。

例如,如果条码模式是“20……{NNNDD}”

  • EAN13代码将以“20”开头,

  • 然后是5位数字(在本模块中称为“条码基础”),

  • 然后是5位其他数字,用于定义2位小数的可变价格,

  • 最后一位数字(第13位数字)是校验位(即校验和)。

使用本模块,可以实现以下功能

  • 将模式(条码规则)分配给模型

  • 手动定义条码基础

    • 如果条码的基础需要由用户设置(通常是在您公司中定义的内部代码),则手动设置。

    • 通过序列自动设置,如果您想让Odoo递增序列(典型情况是客户编号递增)。

  • 基于定义的模式和条码基础生成条码

目录

安装

本模块使用名为“python-barcode”的额外Python库,您应该安装它以使条码生成正常工作。

sudo pip install python-barcode

配置

要配置此模块,您需要

  • 转到设置/技术/序列和标识符/条码命名法

  • 选择一个命名法

  • 创建或选择一个规则

image

  • 对于手动生成,在“生成类型”中设置

    • “手动设置基础”

    • 设置模型

image1

  • 对于自动生成,在“生成类型”中设置

    • “由序列管理基础”

    • 设置模型

    • 通过按钮生成新的序列或分配现有的序列

image2

在所有情况下,填充都将自动计算,基于条码图案字段中的“.”数量。

使用

此模块是一个抽象模块。您可以配置条码规则,但为了启用此功能,您需要为特定模型安装一个额外模块。此存储库提供了“barcodes_generator_product”和“barcodes_generator_partner”模块,用于生成产品或合作伙伴模型的条码。

或者,您可以为自定义模型开发一个自定义模块。请参阅“继承”部分。

如果您想为其他模型生成条码,您可以创建一个依赖于“barcodes_generator_abstract”并像那样继承您的模型的自定义模块。

class MyModel(models.Model):
    _name = 'my.model'
    _inherit = ['my.model', 'barcode.generate.mixin']

class barcode_rule(models.Model):
    _inherit = 'barcode.rule'

    generate_model = fields.Selection(selection_add=[('my.model', 'My Model')])

最后,您应该在视图模型中继承,添加按钮和字段。

注意

您的模型应定义一个“条码”字段。

已知问题/路线图

  • 在barcode.rule模型中,可以在“type”和“generate_model”字段之间设置约束和域系统。

  • 在barcode.rule约束中正在清除缓存。在约束中更改是坏习惯,应将其移动到其他地方。

错误跟踪器

错误在GitHub Issues上追踪。如果遇到问题,请检查是否已经报告了您的问题。如果您是第一个发现的,请通过提供详细且受欢迎的反馈来帮助我们解决问题。

请不要直接联系贡献者寻求支持或技术问题的帮助。

致谢

作者

  • GRAP

  • La Louve

  • LasLabs

贡献者

其他致谢

图像

维护者

此模块由OCA维护。

Odoo Community Association

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

当前维护者

legalsylvain

此模块是GitHub上OCA/stock-logistics-barcode项目的一部分。

欢迎您贡献力量。要了解更多信息,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

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

源代码分发

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

构建分发

由...