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

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

形象
丢弃
编写者

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.

编写者

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?

最佳答案

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)
形象
丢弃
编写者 最佳答案

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.

形象
丢弃
相关帖文 回复 查看 活动
2
11月 20
5475
4
2月 25
2642
1
8月 24
2218
2
11月 24
3349
3
10月 23
14885