odoo开发笔记 -- 错误、警告、提示、确认信息显示

1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息:

 raise osv.except_osv(_(‘Error!‘), _(‘Error Message.‘))

示例代码:

    #删除当前销售单,需要验证销售单的状态
    def unlink(self, cr, uid, ids, context=None):
        for rec in self.browse(cr, uid, ids, context=context):
            if rec.state not in [‘draft‘]:
                raise osv.except_osv(_(u‘警告!‘),_(u‘您不能删除以下状态的销售单 %s .‘)%(rec.state))
            if rec.create_uid.id != uid:
                raise osv.except_osv(_(u‘警告!‘),_(u‘您不能删除他人创建的单据.‘))
        return super(sale, self).unlink(cr, uid, ids, context) 

2.字段的 onchange 事件中返回值,同时返回提示信息:

 warning = {
  ‘title‘: _(‘Warning!‘),
  ‘message‘ : _(‘Warning Message.‘)
  }
 return {‘warning‘: warning, ‘value‘: value}

示例代码:

    def onchange_pricelist_id(self, cr, uid, ids, pricelist_id, order_lines, context=None):
        context = context or {}
        if not pricelist_id:
            return {}
        value = {
            ‘currency_id‘: self.pool.get(‘product.pricelist‘).browse(cr, uid, pricelist_id, context=context).currency_id.id
        }
        if not order_lines:
            return {‘value‘: value}
        warning = {
            ‘title‘: _(‘Pricelist Warning!‘),
            ‘message‘ : _(‘If you change the pricelist of this order (and eventually the currency), prices of existing order lines will not be updated.‘)
        }
        return {‘warning‘: warning, ‘value‘: value}

3.视图中 button 按钮点击时显示确认信息:【直接加上"confirm"属性,就可以实现,点击按钮的时候,弹出窗口,提示“是否确认操作”的提示框】

 <button name="cancel_voucher" string="Cancel Voucher" type="object" states="posted" confirm="Are you sure you want to unreconcile this record?"/>

相关参考:

http://www.cnblogs.com/cnshen/p/3205405.html

原文地址:https://www.cnblogs.com/hellojesson/p/8177411.html

时间: 2024-10-02 06:21:45

odoo开发笔记 -- 错误、警告、提示、确认信息显示的相关文章

odoo开发笔记 -- 附件上传

附件上传基本原理实现,可以参考这篇: https://www.cnblogs.com/ljwTiey/p/7348291.html http://blog.csdn.net/wangnan537/article/details/41903159 首先我们看一下odoo界面默认的附件功能,有木有感觉不是很友好!囧 :) 下面给小伙伴们介绍另一种odoo自带的附件管理方式! 首先,在你的模型中增加如下定义: ##############################################

odoo开发笔记 -- 安装Backend debranding去除odoo信息模块后 隐藏开发者模式

Backend debranding <?xml version="1.0" encoding="UTF-8"?> <templates> <t t-extend="mail.client_action"> <t t-jquery=".o_mail_request_permission" t-operation="inner"> Your permission

eclipse关闭错误警告提示

ios开发笔记----exc_bad_access(code=1, address=0x789870)野指针错误,假死debug状态

错误原因: exc_bad_access(code=1, address=0x789870)野指针错误,主要的原因是,当某个对象被完全释放,也就是retainCount,引用计数为0后.再去通过该对象去调用其它的方法就会出现野指针错误. 例如: Person *jerry = [[Person alloc]init];  //  retainCount引用计数为1 [jerry eat];  //  调用吃的方法 [jerry release];  //  释放jerry这个对象到 retain

[开发笔记]-“在引用COM组件时,出现了无法嵌入互操作类型。。。”的错误

这两天在做一个需要将wps文档转换成word文档的程序,在调用wps的com组件时项目编译是没有问题的,但当运行的时候却弹出了下面的错误提示: 从网上百度一番后,找到了正确的解决方法. 先从Com组件中添加引用: 选中引入的Com组件库,右键-> 属性: 将“嵌入互操作类型”改为 False 选项: 重新编译,程序正常运行. 由此,让我联想到了在前不久一个朋友在使用Office组件用来转换pdf文档时,出现的 “无法嵌入互操作类型...”的问题,记得当时他的处理方法是按照网上说的教程,设置程序获

bootstrap错误警告信息提示

bootstrap提供了成功执行.警告和错误信息的样式. 在使用该功能的时候需要引入以下几个文件: bootstrap.css jquery.js(需放在bootstrap.js之前) bootstrap.js(官方推荐引入的是bootstrap-alert.js) 主要使用的样式: .span4 .alert(默认样式) .alert alert-successs .alert alert-error .alert alert-info 实例代码如下: <!DOCTYPE html> <

visual studio 2015 IOS开发连接mac时提示错误couldn&#39;t connect to xxxx, please try again的一个方法

本人使用虚拟机MAC.原本使用虚拟机中的VS2015连接正常没有问题. 但是当把MAC的虚拟机文件COPY到另一个机器上,提示“couldn't connect to xxxx,  please try again”. 经过查找和升级MAC中的Xamarin.ios都不行.后面尝试添加新的MAC(在VS的连接页面左下角有一个“add mac..."),直接输入MAC的IP,竟然连接上了. 分析原因可能是自动找到的使用MAC机器名的有些问题,但不确定.仅供各位参考. visual studio 2

Android开发笔记(一百零六)支付缴费SDK

第三方支付 第三方支付指的是第三方平台与各银行签约,在买方与卖方之间实现中介担保,从而增强了支付交易的安全性.国内常用的支付平台主要是支付宝和微信支付,其中支付宝的市场份额为71.5%,微信支付的市场份额为15.99%,也就是说这两家垄断了八分之七的支付市场(2015年数据).除此之外,还有几个app开发会用到的支付平台,包括:银联支付,主要用于公共事业缴费,如水电煤.有线电视.移动电信等等的充值:易宝支付,主要用于各种报名考试的缴费,特别是公务员与事业单位招考:快钱,被万达收购,主要用于航空旅

李兴华JavaWeb开发笔记

李兴华JavaWeb开发笔记 1.Java语法-基础 环境变量-JAVA_HOME, PATH, ClassPath 变量名 作用 举例 JAVA_HOME 指向JDK目录 C:\Program Files\Java\jdk1.7.0_21 PATH 指向java.exe目录. %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin CLASSPATH 执行.jar文件.zip文件..class文件所在目录. (程序要用到哪些.class文件,) %JAVA_HOME%\lib