允许使用条形码作为启动器
项目描述
本模块允许使用条形码作为动作的启动器。
动作将启动一个函数,该函数使用条形码以返回一个动作。
目录
使用方法
动作必须配置以下数据:* 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
问题跟踪器
Bug跟踪在GitHub Issues上。如果遇到问题,请检查那里您的问题是否已经报告。如果您首先发现它,请通过提供详细的和受欢迎的反馈来帮助我们将其摧毁。
请不要直接联系贡献者以获取支持或帮助解决技术问题。
致谢
贡献者
Enric Tobella <etobella@creublanca.es>
Jordi Ballester <jordi.ballester@eficent.com>
维护者
本模块由OCA维护。
OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛应用。
本模块是GitHub上OCA/server-ux项目的一部分。
欢迎您贡献力量。了解如何贡献,请访问https://odoo-community.org/page/Contribute。
项目详情
关闭
散列 for odoo12_addon_barcode_action-12.0.1.0.0.99.dev12-py3-none-any.whl
算法 | 散列摘要 | |
---|---|---|
SHA256 | fcda3b781c7b7d8a1d5590513cfe534d011056310ab7f00c3971ce8b7c1c227c |
|
MD5 | 69642717b473f7d09c257fbf0fc8843a |
|
BLAKE2b-256 | 97d5c46e822f627c124b1198cd894ca4f190adb0706feb6d0425f7d87e781c5f |