首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Odoo 8- stock.picking上的'state‘字段未触发on_record_write()

Odoo是一款开源的企业资源规划(ERP)软件,它提供了一套完整的管理解决方案,包括销售、采购、库存、财务、人力资源等模块。在Odoo中,stock.picking是库存模块中的一个重要对象,用于跟踪和管理库存的出入库操作。

在Odoo 8版本中,stock.picking对象上有一个名为'state'的字段,它表示库存操作的状态。当这个字段的值发生变化时,会触发on_record_write()方法,该方法可以在代码中进行自定义操作。

然而,如果在使用Odoo 8时发现'state'字段未触发on_record_write()方法,可能是由于以下几个原因:

  1. 代码逻辑错误:可能是在自定义的on_record_write()方法中存在错误,导致无法正确触发。可以检查代码逻辑,确保正确处理'state'字段的变化。
  2. 模块版本不匹配:Odoo有许多模块和插件,如果使用的是不兼容的模块版本,可能会导致触发机制失效。建议检查所使用的模块版本是否与Odoo 8兼容,并确保更新到最新版本。
  3. 数据库配置问题:有时候,数据库配置可能会影响触发机制的正常运行。可以检查数据库配置文件,确保正确配置并启用了触发器功能。

针对这个问题,可以尝试以下解决方案:

  1. 检查代码逻辑:仔细检查自定义的on_record_write()方法,确保正确处理'state'字段的变化,并排除代码逻辑错误。
  2. 更新模块版本:检查所使用的模块版本是否与Odoo 8兼容,并确保更新到最新版本。
  3. 检查数据库配置:检查数据库配置文件,确保正确配置并启用了触发器功能。

如果以上解决方案无效,建议参考Odoo官方文档、社区论坛或向Odoo技术支持寻求帮助,以获取更详细的解决方案。

腾讯云提供了一系列云计算产品和服务,可以帮助企业实现灵活、可靠和安全的云计算解决方案。具体针对Odoo 8- stock.picking上的'state'字段未触发on_record_write()问题,腾讯云可能提供以下相关产品和服务:

  1. 云服务器(CVM):提供可扩展的计算资源,用于部署和运行Odoo应用程序。
  2. 云数据库MySQL版(CDB):提供高性能、可扩展的MySQL数据库服务,用于存储和管理Odoo应用程序的数据。
  3. 云监控(Cloud Monitor):提供实时监控和报警功能,用于监测Odoo应用程序的运行状态和性能指标。
  4. 云安全中心(Cloud Security Center):提供全面的安全管理和威胁检测服务,帮助保护Odoo应用程序的安全。

请注意,以上仅为示例,具体的产品和服务选择应根据实际需求和情况进行评估和选择。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于腾讯云的产品和服务信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

odoo ORM API学习总结兼orm学习教程

states (dict) –将state值映射到UI属性-值对列表的字典映射,简单说就是允许用户界面依据state字段的值来动态设置对应字段的UI属性,因此,它要求存在一个state字段并在视图中使用...odoo.fields.Boolean类型 odoo.fields.state 对象的声明周期阶段,供fields....这意味着视图中不存在的字段在创建记录期间不会触发调用。...必须重写create,以确保始终触发约束(例如,测试是否缺少值) odoo.api.depends(*args)[源代码] 返回一个装饰器,该装饰器指定compute方法的字段依赖关系(对于新型函数字段...例如,下面的第二个类仅在state字段上添加工具提示: class First(models.Model): _name = 'foo' state = fields.Selection

13.5K10

odoo 开发入门教程系列-一些用户界面

上一章,我们通过CSV文件添加了数据。当需要添加数据格式简单时,用CSV格式还是很方便的,当数据格式更复杂时(比如视图架构或者一个邮件模板),我们使用XML格式。...最深层是触发打开记录列表的action。 操作(Actions) 参考: 主题相关文档可以查看 Actions....动作可以通过三种方式触发 : 点击菜单项目(链接接到指定动作) 点击视图按钮(如果与action关联) 对象的上下文action 本章仅涵盖第一种情况。...练习 -- 添加state字段 为estate.property model添加state 字段(字段名可自定义),一个选择列表。...必选字段,且不能被拷贝,默认值New 修改 odoo14\custom\estate\models\estate_property.py 中EstateProperty类,修改active字段,增加state

3K30
  • odoo 开发入门教程系列-QWeb简史

    QWeb简史 到目前为止,我们的房地产模块的界面设计相当有限。构建列表视图很简单,因为只需要字段列表。...Odoo自带内置引擎:QWeb模板。QWeb是Odoo使用的主要模板引擎。它是一个XML模板引擎,主要用于生成HTML片段和页面。 你可能已经在Odoo见过 看板,其中的记录以卡片状结构显示。...事实上,每张卡片的结构是表单元素(包括基本HTML)和QWeb的混合。看板视图的定义与列表视图和表单视图的定义相似,只是它们的根元素是kanban。...(注意:以下未展示文件中的所有内容,其它内容保持不变) 字段name被添加到元素中,但state在它之外。当我们需要字段的值但不想在视图中显示它时,可以将其添加到元素之外。

    2.2K20

    odoo context上下文用法总结

    、过滤条件 视图定义 为设置action打开的tree列表视图,添加默认搜索,搜索条件为 state字段值等于True 的、元素的name属性值 content 如果fieldName为搜索字段的name属性值,那么...--此处代码略...--> odoo> 说明:'group_by': '分组字段名称' 用于视图对象按钮,传递数据给模型方法 模型设计 #!...> 说明:context属性值中的字典的键值如果为模型中定义的字段名称,则该字段名称必须以元素的形式,出现在模型对应的视图(即不能是内联视图,比如内联Tree列表)中,否则会出现类似错误提示...为可编辑列表视图字段搜索添加查询过滤条件](odoo 为可编辑列表视图字段搜索添加查询过滤条件.md) 用于记录集,传递数据给模型方法 模型设计 #!

    2.2K20

    odoo 开发入门教程系列-基本视图

    在上一章中已经看到,odoo能够为给定模型生成默认视图。实际上,默认视图对于业务应用程序来说是不可接受的。相反,我们至少应该以逻辑的方式组织各个字段。 视图是在带有操作和菜单的XML文件中定义的。...它们是ir.ui.view model的实例。 在我们的estate模块中,我们需要以逻辑方式组织字段: 在列表(树)视图中,我们希望显示的不仅仅是名称。 在表单视图中,应该对字段进行分组。..._name的值 重启服务,浏览器验证,效果如下: 说明:如果未给添加string属性,则显示如下: Form(表单) 参考: 主题关联文档可以查看Form....在odoo中,domain对记录上的条件进行编码:domain是用于选择模型记录子集的条件列表。每个条件都是一个包含字段名、运算符和值的三元组。...如果指定字段满足作用于值的运算符的条件,则记录满足条件。

    3.4K40

    odoo 开发入门教程系列-计算的字段和变更(Computed Fields And Onchanges)

    依赖(Dependencies) 计算的字段的值通常取决于计算记录中其他字段的值。ORM期望开发人员使用修饰符depends()指定计算方法上的依赖项。...每当修改字段的某些依赖项时,ORM使用给定的依赖项来触发字段的重新计算 from odoo import api, fields, models class TestComputed(models.Model...在self 上迭代,会一个接一个的生成记录,其中每个记录本身是长度为1的集合。可以使用.(比如 record.name)访问单条记录的字段或者给字段赋值。...你对self所做的任何更改都将反映在表单上: from odoo import api, fields, models class TestOnchange(models.Model): _name...当计算字段依赖于其他计算字段时,更改值可能会触发大量重新计算。这会导致性能不佳。

    3.2K30

    odoo Actions学习总结

    包含字段: res_model action触发的要显示的视图关联的模型 views (view_id,view_type)对的列表。...如果未提供id,则客户端应获取所请求模型的指定类型的默认视图(这由 fields_view_get()自动完成)。列表的第一种类型是默认视图类型,在执行操作时默认打开。...highlight=do_action#the-action-manager 在数据库window action中,操作有几个不同的字段,这些字段应被客户端忽略,主要用于组成view列表 view_mode...所有这些类型都必须在生成的views列表中(至少有一个False view_id) view_ids M2M(技术上不是M2M:添加了一个sequence字段,可以只由一个视图类型组成,没有视图id)...中的每个未填充类型,追加(False,type) 应用实践举例 在estate模块的estate.property模型的表单视图中,为Action添加菜单"选取offers",如下: !

    2.7K30

    在Ubuntu 16.04上安装Odoo 11堆栈

    对于简单安装,可以在单个Linode上安装Odoo及其依赖项(有关详细信息,请参阅我们在Ubuntu上安装Odoo 10的指南)。但是,此单服务器设置不适合生产部署。...在主节点和从节点上创建此用户。 切换到postgres用户并创建负责所有操作的数据库用户odoo。...Odoo不会处理数据库复制,因此如果两个服务器共享相同的信息,则更容易触发最终的故障转移过程。...max_wal_size:触发​​新检查点的WAL的实际目标大小。 archive_mode:设置为on激活存档存储(请参见下文)。...同步主节点和从节点数据 确认从节点 PostgreSQL服务未运行: sudo systemctl status postgresql 启动主节点 PostgreSQL服务: sudo systemctl

    8.9K30

    odoo 开发入门教程系列-继承(Inheritance)

    事实上,多亏经典的Python继承,我们的模型中已经包含了这样的操作: from odoo import fields, models class TestModel(models.Model):...为此,我们需要向res.users模型添加一个字段,并调整其视图以显示它。 Odoo提供了两种继承机制来以模块化的方式扩展现有模型。...(委托)允许将模型的每个记录链接到父模型的记录,并提供对该父记录的字段的透明访问。...odoo中,第一种机制最常用。在我们的例子中,我们希望向现有模型添加一个字段,这意味着我们将使用第一种机制。...,作为同级元素 attributes 使用xpath主体中的特定属性元素更改匹配元素的属性 当匹配单个元素时,可以直接在要查找的元素上设置position属性。

    2.3K20

    odoo wizard界面显示带复选框列表及勾选数据获取

    实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如下图(非实际项目界面截图,仅用于介绍本文主题),打开记录详情页(form视图),点击某个按钮(图中的"...wizard可以通过关系字段(many2one或many2many)引用常规记录或wizard记录,但常规记录不能通过many2one字段引用wizard记录 详细代码 注意:为了更清楚的表达本文主题...@api.model def action_select_records_via_checkbox(self, args): '''通过wizard窗口界面复选框选取记录时触发的操作...,执行复选框操作时,先禁用按钮,不允许执行确认操作,因为执行复选框触发的请求可能没那么快执行完成,前端数据可能没完全传递给后端,此时去执行操作,可能会导致预期之外的结果。...> odoo14\custom\estate\__manifest__.py 加载自定义模板文件,进而实现自定义js文件的加载 #!

    5.3K60

    odoo 开发入门教程系列-约束(Constraints)

    约束(Constraints) 上一章介绍了向模型中添加一些业务逻辑的能力。我们现在可以将按钮链接到业务代码,但如何防止用户输入错误的数据?...例如,在我们的房地产模块中,没有什么可以阻止用户设置负预期价格。 odoo提供了两种设置自动验证恒定式的方法:Python约束 and SQL约束。...Python约束定义为用 constrains()修饰的方法,并在记录集上调用。修饰符指定约束中涉及哪些字段。当修改这些字段中的任何字段时,将自动计算约束。...如果不满足该方法的恒定式,则该方法将引发异常: from odoo.exceptions import ValidationError ......警告 当和浮点数打交道时,总是使用从 odoo.tools.float_utils导入的float_compare() 和float_is_zero()方法 确保每次售价或者预期价格改变时,自动触发约束

    1.5K20

    odoo 权限管理学习总结

    =70 通过上述方式实现的菜单访问权限控制,实际是通过控制是否隐藏菜单实现的,也就说,如果知道未授权菜单ID,还是可以通过菜单ID拼接菜单URL进行未授权访问。...如果当前用户不在列出的组中,他将无权访问该字段: 将自动从请求的视图中删除受限制的字段 从fields_get()响应中删除受限制的字段 尝试(显式的)读取或写入受限字段会导致访问错误 修改estate...selling_price" string="Selling Price" groups="estate.group_estate_property_selling_price_field"/> 验证,发现界面上,未授权上述框选权限的用户已经看不到上述字段了...注意:通过为当前视图中目标字段添加groups属性实现的权限控制仅作用于当前视图,如果希望当前视图模型(Model)的所有视图中,对该字段实现统一的权限控制话,需要在模型定义中,为目标字段添加groups...(参考网络资料,未实践验证) 按钮权限(按钮级别) 类似字段权限控制,仅需在在对应视图中,为目标按钮元素,添加groups属性即可。

    10.2K20

    ODOO配置文件etcodoo.conf配置详解

    1.Dbfilter配置 Odoo是一个多租户系统:一个Odoo系统可以运行并服务于多个数据库实例。它也是高度可定制的,定制(从加载的模块开始)取决于“当前数据库”。 ...但是,对于没有绑定到数据库的未登录用户(门户、网站)来说,这是一个问题:Odoo需要知道应该使用哪个数据库来加载网站页面或执行操作。...工作进程数量计算 数量规则:(#CPU * 2) + 1 Cron工作者需要CPU 1个工作进程~=6个并发用户 内存大小计算 我们认为20%的请求是繁重请求,而80%是简单请求 一个繁重的工作,当所有的计算字段都设计好了...这样做时,您需要将更多的http头转发给Odoo,并在Odoo配置中激活代理模式,让Odoo读取这些头。...配置实例 4 CPU 8线程服务器 60个并发用户 60个用户/6=10上需要的worker数量 (4×2)+1=9<理论最大worker数 我们将使用8个workers+1作为cron。

    7.7K31

    JavaEE就业学习路线(给初学者以及自学者一个学习方向)

    8-异常 9-递归 10-File类的使用 11-文件的复制 12-输入输出流的使用 13-打印流的使用 14-对象流的使用 15-Properties的使用 第八节进程与线程 1-简介 2-多线程的实现...4-反射-私有构造 5-反射-普通方法 6-反射-字段 7-属性的储存和加载 8-反射综合案例 第十一节xml的定义和使用 1-BeanUtils工具类的使用 2-xml的基本语法 3-xml约束-DTD...4-xml约束-Schema 5-xml的解析 6-xml的综合案例 7-常见注解 8-自定义注解 9-类的加载 10-动态代理 第十二节数据库的安装和使用 1-数据库的安装 2-Sql语句--DDL...20-商品的上架和下架 21-后台订单模块 第十八节 linux 1-Linux 入门 2-Linux 的常用命令一 3-Linux常用命令二 4-Linux 下安装软件 第十九节 Nginx 1-nginx...9-函数 10-视图 11-序列 12-同义词 13-索引 14-PLSQL 15-储存函数和储存过程 16-触发器 Hibernate 1-Hibernate 入门 2-Hibernate 配置详解

    2.5K70

    react全家桶 NodeJS MongoDB搭建实时聊天的app

    【自动化构建】 create-react-app: 官网提供的react脚手架工具,快速初始化项目代码 eslint: 代码风格检查工具,规范代码书写 技术详解 react中注意的地点 绑定事件,state...没有的话 直接跳转到登录页 登录这里 对输入的用户名和密码做一下校验 然后存储到本地一个用户id 登录返回成功之后dispatch返回数据 触发reducer 将数据存储到state中 主页以及切换部分...传递进来 聊天数据的展示 主要是使用socket.io 实现数据通信原理 后端使用express+socketio的结合,前端监听端口号9000以后,进行了数据的交互和接收 我们在每条数据上 加上了其他的一些值...根据发收方的用户id 进行辨别和数组的循环渲染 未读消息的更新 默认每条数据的read字段 都是false,筛选聊天数据的发送对象是正在使用这个软件的用的时候,筛选出来的结果就是未读消息的数量 socket...使用emit触发 on来接受 当接受到一个消息的时候 未读消息加1 当我们从聊天页面退出的时候 把这个聊天界面的对方的id发送给后端进行处理 将总体未读消息数量 减去这个id的维度消息数量 预览效果

    3.4K20

    离开页面前,如何防止表单数据丢失?

    向用户添加一个确认对话框,询问他们在具有未保存表单更改的情况下是否确认重定向是一种良好的用户体验实践。通过显示此提示,用户将意识到他们有未保存的更改,并允许在继续重定向之前保存或丢弃它们的工作。...应用程序的最终版本可以在 CodeSandbox 上进行测试,代码可在 GitHub 上获得。...使用 beforeunload 事件检测页面离开 我们创建 FormPrompt 组件,在其中添加 beforeunload 事件的监听器。此事件将在用户离开页面之前触发。...通过在事件上调用 preventDefault 方法,我们可以触发浏览器的确认对话框。仅当表单具有未保存的更改(由 hasUnsavedChanges 属性指示)时,才会激活此对话框。...最后,我们在 usePrompt 钩子中抽象出阻止逻辑并管理阻止器的状态。 我们可以通过导航到联系步骤,填写一些字段并单击主页导航项来测试 FormPrompt 是否按预期工作。

    5.9K20

    使用嵌入式SQL(五)

    当触发器代码显式设置%ok = 0来中止触发器时,这最常用于从触发器发出用户定义的消息。当执行SQL代码时,将使用有效的NLS语言生成错误消息字符串。可以在不同的NLS语言环境中编译SQL代码。...经过多行操作之后,%ROWID变量包含系统分配的最后一条插入,更新或删除的记录的RowID(对象ID)的值。如果未插入,更新或删除任何记录,则%ROWID变量值将保持不变。...如果它同时返回字段值和聚合函数值,则将每个FETCH的%ROWID值设置为查询返回的最后一行的RowID。没有声明游标的SELECT不会设置%ROWID。...查询未返回任何数据,在这种情况下,输出主机变量未定义。 %ROWCOUNT = 0。...根据嵌入式SQL的调用方式,可能必须在输入嵌入式SQL之前新建SQLCODE变量。在触发代码中,将SQLCODE设置为非零值会自动将%ok = 0设置为中止并回滚触发操作。

    2.7K20
    领券