Skip to main content

Generate Barcodes for Any Models

Project description

License: AGPL-3

Generate Barcodes for any Models (Abstract)

This module expends Odoo functionality, allowing user to generate barcode depending on a given barcode rule for any Model.

For exemple, a typical pattern for products is “20…..{NNNDD}” that means that: * the EAN13 code will begin by ‘20’ * followed by 5 digits (named Barcode Base in this module) * and after 5 others digits to define the variable price * a 13 digit control

With this module, it is possible to:

  • Affect a pattern (barcode.rule) to a model

  • Define a Barcode base:
    • manually, if the base of the barcode must be set by a user. (typically an internal code defined in your company)

    • automaticaly by a sequence, if you want to let Odoo to increment a sequence. (typical case of a customer number incrementation)

  • Generate a barcode, based on the defined pattern and the barcode base

Installation

This module use an extra python library named ‘viivakoodi’ you should install to make barcode generation works properly. ‘viivakoodi’ is a more active for of ‘pyBarcode’.

sudo pip install viivakoodi

Configuration

To configure this module, you need to:

  • Go to Settings / Technical / Sequences & Identifiers / Barcode Nomenclatures

  • Select a Nomenclature

  • Create or select a rule

/barcodes_generator_abstract/static/description/barcode_rule_tree.png
  • For manual generation, set:
    • ‘Base set Manually’ in ‘Generate Type’

    • Set the model

/barcodes_generator_abstract/static/description/barcode_rule_form_manual.png
  • For automatic generation, set:
    • ‘Base managed by Sequence’ in ‘Generate Type’

    • Set the model

    • Generate a new sequence by button, or affect a existing one

/barcodes_generator_abstract/static/description/barcode_rule_form_sequence.png

In all cases, padding will be computed automaticaly, based on the number of ‘.’ in the Barcode Pattern field.

Usage

This module is an abstract module. You can configure Barcode Rule, but to enable this feature, you need to install an extra module for a given model. This repository provide ‘barcodes_generator_product’ and ‘barcodes_generator_partner’ module to generate barcode for product or partner model.

Alternatively, you can develop a custom module for a custom model. See ‘Inheritance’ parts.

Try this module on Runbot

Try me on Runbot

Inheritance

If you want to generate barcode for another model, you can create a custom module that inherits on ‘barcodes_generator_abstract’ and inherit your model like that:

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’)])

Finally, you should inherit your model view adding buttons and fields.

Note

Your model should have a field ‘barcode’ defined.

Known issues / Roadmap

1. On barcode.rule model, constraint and domain system could be set between ‘type’ and ‘generate_model’ fields.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Credits

Images

Contributors

Maintainer

Odoo Community Association

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

To contribute to this module, please visit https://odoo-community.org.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file odoo9_addon_barcodes_generator_abstract-9.0.1.0.0.99.dev8-py2-none-any.whl.

File metadata

File hashes

Hashes for odoo9_addon_barcodes_generator_abstract-9.0.1.0.0.99.dev8-py2-none-any.whl
Algorithm Hash digest
SHA256 ec7dc20ec962744373b17ea750e266d82631a90ed399e8d1e5cd9470676a194a
MD5 00f4c0421030b27b686f3572380e7e39
BLAKE2b-256 1c0471b4b45d65642c8e3b07f2dbbd26c9a2dc77e07b38e6933bb1967c5d3e92

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page