其他分享
首页 > 其他分享> > Odoo 中创建序列并生成用于记录的序列值

Odoo 中创建序列并生成用于记录的序列值

作者:互联网

简介

总是需要自动编号的,物资要编号,档案要编号,怎么在odoo自动编号

一:使用xml注册序列

data/sequence.xml    记得注册到__manifest__.py

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data noupdate="1">

        <record id="it_equipment_sequence" model="ir.sequence">
            <field name="name">it_equipment_sequence</field>
            <field name="code">it_equipment.seq</field>
            <field name="prefix">T%(range_year)s</field>
            <field name="padding">8</field>
        </record>

    </data>
</odoo>

这时,你在技术-序列,就可以看到定义的序列了。也能看到prefix的各种变量

使用range_就是会在改变这个变量值的时候重新从1开始计算了。

二:使用序列

model.py

 asset_code = fields.Char(string='资产编码', default=lambda self: self.env['ir.sequence'].next_by_code('it.equipment.seq'))

我感觉在创建时获取比较好。

也有人改写creat方法来做。

@api.model
def create(self, vals):
# We generate a standard reference
vals['asset_code'] = self.env['ir.sequence'].next_by_code('it.equipment.seq') or '/'
return super(equipment, self).create(vals)

 

标签:code,seq,sequence,创建,self,equipment,Odoo,序列
来源: https://www.cnblogs.com/jackadam/p/16510503.html