~akretion-team/e-commerce-addons/fix-export-product-6.1

« back to all changes in this revision

Viewing changes to sale_exceptions/sale.py

  • Committer: Sébastien Beau
  • Date: 2012-12-07 14:11:56 UTC
  • Revision ID: sebastien.beau@akretion.com-20121207141156-39ous1mamd5iqh4h
[IMP] sale_exception: clean the main exception after validating the sale_order

Show diffs side-by-side

added added

removed removed

Lines of Context:
71
71
    def _get_main_error(self, cr, uid, ids, name, args, context=None):
72
72
        res = {}
73
73
        for sale_order in self.browse(cr, uid, ids, context=context):
74
 
            res[sale_order.id] = sale_order.exceptions_ids and sale_order.exceptions_ids[0].id or False
 
74
            if sale_order.state == 'draft' and sale_order.exceptions_ids:
 
75
                res[sale_order.id] = sale_order.exceptions_ids[0].id
 
76
            else:
 
77
                res[sale_order.id] = False
75
78
        return res
76
79
 
77
80
    _columns = {
80
83
                        relation="sale.exception",
81
84
                        string='Main Exception',
82
85
                        store={
83
 
                            'sale.order': (lambda self, cr, uid, ids, c={}: ids, ['exceptions_ids'], 10),
 
86
                            'sale.order': (lambda self, cr, uid, ids, c={}: ids, ['exceptions_ids', 'state'], 10),
84
87
                        }),
85
88
        'exceptions_ids': fields.many2many('sale.exception', 'sale_order_exception_rel',
86
89
                                           'sale_order_id', 'exception_id',