OpenERP 7禁用日期控制的手动输入

时间:2017-03-28 08:49:14

标签: openerp openerp-7

据我所知,OpenERP 7已经过时,不再有任何支持

但由于这个问题很重要,我需要在这里提出 我是OpenERP 7的新手,我们聘请了一名自由职业者为我们做一些工作

我们需要将参赛日期限制在今天,昨天和前一天

自由职业者确实通过选择限制了它,但如果用户手动输入日期,它仍会接受条目

我向他提到了这个漏洞以及它如何为我们带来问题,但他声称他需要更改一个js文件并且很难完成

我接受了他的话,但我的经理想确认我没有被欺骗,因此,这个问题

那么,如何实现上述目标呢?

1 个答案:

答案 0 :(得分:1)

您正在寻找的是绝对可能的。 您可以使用onchange或_constraints:

如果您想动态检查状况,可以使用 onchange ,或者如果您想在保存时检查条件,可以使用 _constraints 。< / p>

示例:

    def _check_duration(self, cr, uid, ids, context=None):
    for obj_ac in self.browse(cr, uid, ids, context=context):
        if obj_ac.date_stop < obj_ac.date_start:
            return False
    return True

_constraints = [
    (_check_duration, _('Error! The duration of the academic year is invalid.'), ['date_stop']),
]

    def onchange_date(self, cr, uid, ids, date, context=None):
    if date:
        if Condition Here:
            warning = "Your text"
            return {'value':{'date': None}, 'warning':warning}
        else:
            return {}

希望这有帮助。