跳转到主要内容

允许使用条形码作为启动器

项目描述

Beta License: AGPL-3 OCA/server-ux Translate me on Weblate Try me on Runboat

此模块允许使用条形码作为动作的启动器。

动作将启动一个使用条形码以返回一个动作的功能。

目录表

用法

动作必须在以下数据中配置上下文:* model:我们可以找到方法(必需)的模型(必需)* method:要执行的方法(必需)* res_id:作为基础的ID(可选)

方法必须返回一个动作。使用演示数据安装此模块将安装一个演示应用程序,允许系统管理员通过条形码中编码的外部参考查找合作伙伴。

转到 设置 / 查找合作伙伴 并扫描包含现有合作伙伴内部参考的条形码。一旦读取条形码,系统就会将您重定向到该合作伙伴的表单视图。

此示例的技术实现

动作

<act_window id="res_partner_find"
    name="Find Partner"
    res_model="barcode.action"
    view_mode="form"
    view_type="form"
    context="{'default_model': 'res.partner', 'default_method': 'find_res_partner_by_ref_using_barcode'}"
    target="new"/>

<menuitem id="menu_orders_customers" name="Find partners"
    action="res_partner_find"
    parent="base.menu_administration"/>

Python代码

import json
from odoo import api, models, _
from odoo.tools.safe_eval import safe_eval


class ResPartner(models.Model):
    _inherit = 'res.partner'

    @api.multi
    def find_res_partner_by_ref_using_barcode(self, barcode):
        partner = self.search([('ref', '=', barcode)], limit=1)
        if not partner:
            action = self.env.ref('res_partner_find')
            result = action.read()[0]
            context = safe_eval(result['context'])
            context.update({
                'default_state': 'warning',
                'default_status': _('Partner with Internal Reference '
                                    '%s cannot be found') % barcode
            })
            result['context'] = json.dumps(context)
            return result
        action = self.env.ref('base.action_partner_form')
        result = action.read()[0]
        res = self.env.ref('base.view_partner_form', False)
        result['views'] = [(res and res.id or False, 'form')]
        result['res_id'] = partner.id
        return result

错误跟踪器

错误在GitHub问题上跟踪。如果遇到问题,请检查是否已经报告了您的问题。如果是您首先发现的,请通过提供详细且受欢迎的反馈来帮助我们将其击败。

请不要直接联系贡献者以获取支持或帮助解决技术问题。

鸣谢

作者

  • Creu Blanca

  • ForgeFlow

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

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

此模块是GitHub上OCA/server-ux项目的一部分。

欢迎您贡献力量。了解如何贡献,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

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

源代码发行版

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

构建发行版

odoo14_addon_barcode_action-14.0.1.0.3-py3-none-any.whl (35.0 kB 查看哈希值)

上传时间 Python 3

支持者:

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