跳至内容
菜单
此问题已终结
2 回复
10426 查看

I try to add a error box on my function button but I do not know how to do it..

I try this :

def testError(self, cr, uid, ids, context=None):
    for line in self.browse(cr, uid, ids, context=context):
        if line.invoiced:
            raise osv.except_osv(_('Invalid Action!'), _('Test.'))
    return self.write(cr, uid, ids, {'state': 'draft'})
形象
丢弃
最佳答案

Try this. This will show a popup message.

def testError(self, cr, uid, ids, context=None):
    for line in self.browse(cr, uid, ids, context=context):
        if line.invoiced:
            warning = { 'title': 'Warning!', 'message' : 'Invalid action!'}
            return {'warning': warning}
    return self.write(cr, uid, ids, {'state': 'draft'})
形象
丢弃
最佳答案

Hii,

 i dont know which odoo version you will use here is example to show error pop up box in odoo verison 8

from openerp.osv import osv

from openerp.tools.translate import _


class YourModel(osv.osv):

    _name = 'your.model'  # Replace with your actual model


    def test_error(self, cr, uid, ids, context=None):

        for line in self.browse(cr, uid, ids, context=context):

            if line.invoiced:

                raise osv.except_osv(_('Invalid Action!'), _('This document is already invoiced.'))

        return self.write(cr, uid, ids, {'state': 'draft'})

i hope it is use full

形象
丢弃

Why are you answering questions from 11 years ago? I doubt that hellequin is still waiting for another answer.

any problem if i give the answer

相关帖文 回复 查看 活动
0
3月 15
4377
0
3月 15
3550
1
3月 15
3995
1
4月 23
3759
0
3月 15
4904