美文网首页
odoo ir.sequence 创建订单序列号

odoo ir.sequence 创建订单序列号

作者: PigPIgAutumn | 来源:发表于2017-08-09 12:12 被阅读0次

    在日常的开发中,我们时常会遇到需要生成订单序列号的情况,这种时候就需要使用ir.sequence这个类了。
    首先,在xml文件中添加一个record:

    <record id="xxx" model="ir.sequence">
            <field name="name">name of this sequence</field>
            <field name="code">你需要序列化的模型的name</field>
            <field name="prefix">PPA%(year)s%(month)s%(day)s</field>
            <field name="padding">5</field>
            <field name="company_id" eval="False"/>
    </field>
    

    解释一下代码:
    name:该ir.sequence记录的name,没关紧要,只是报错的时候让你容易知道是这个地方出问题而已
    code:需要序列化的模型的name
    prefix:前缀,如2017080900001中的20170809
    padding:序号的位数,5表示序号为5位数字,4表示序号为4位数字
    company_id:暂不清楚作用,但必须指定

    最后,在代码中调用:

    seq_id=self.env['ir.sequence'].next_by_code('模型名')
    

    seq_id就是最终我们需要的序列号

    相关文章

      网友评论

          本文标题:odoo ir.sequence 创建订单序列号

          本文链接:https://www.haomeiwen.com/subject/hcifrxtx.html