This question has been flagged
2 Replies
6752 Views

Hi, I have a module that depends on sale module and i have used sale order in my views, i want to generate sequence for only the orders which have new field values according to the new module. How can i do that?? If i create sequence from openerp menu than it applies the new sequence field to all the previous orders too. urgent help required! Thanks in advance

Avatar
Discard
Author

i inherited sale order and added two new fields named chalan and chalan_number, i want the chalan_number generated if chalan's value is 'Chalan'. If i create a sequence then the chalan number is entered in all the previously made sale orders.

You need create custom python code with check your new field.

Author

If i create sequence from Openerp settings menu than is it possible to generate that sequence with condition on clicking compute button in sale_order view?

Best Answer

By using ORM method create, you can provide conditional sequence to any field and also by using the condition, we can even select which sequence to load for a particular field, so for your case:

def create(self, cr, uid, vals, context=None):
        if vals.get('chalan')=='Chalan':
             if vals.get('chalan_number','/')=='/':
                 vals['chalan_number'] = self.pool.get('ir.sequence').get(cr, uid, 'your_sequence_name') or '/'     
             return super(your_class_name,self).create(cr, uid, vals, context=context)
Avatar
Discard
Author Best Answer

i inherited sale order and added two new fields named chalan and chalan_number, i want the chalan_number generated if chalan's value is 'Chalan'. If i create a sequence then the chalan number is entered in all the previously made sale orders.

Avatar
Discard