【转载】odoo技术开发白皮书 第二部分 第七章 序列

转载:http://book.odoomommy.com/chapter2/README13.html

第十四章 序列

序列是odoo中用来获取单据序号的对象,技术模型为ir.sequence。序列的使用在odoo中是非常广泛的,典型的使用场景各个单据的单号。

新建序列

因为序列也是odoo中的对象,因此新建的方法同普通的odoo模型创建的方法一致。通常一个序列包含如下的关键项:

  • name: 序列名称
  • code: 序列代码,通常为实现的模型名称
  • implemetiton: 实现方式。序列有两种实现方式,一种为标准方式(Strandard),另外一种为非间断式(No gap)。两者的区别在于,标准方式允许中间断层(1,2,4,6),而非间断式即不允许断层(1,2,3,4)。非间断式的性能开销要大于标准方式。
  • prefix: 前缀,即生成的序列号的前缀。
  • suffix: 后缀,即生成的序列号的后缀。
  • padding: 序列不包含前缀和后缀的长度。
  • step: 步长,即序列号增长的长度,默认值为1。
  • number_next_actual: 下一序列号数字。

其中,prefix和suffix中可以使用如下的时间变量:

Current Year with Century: %(year)s
Current Year without Century: %(y)s
Month: %(month)s
Day: %(day)s
Day of the Year: %(doy)s
Week of the Year: %(woy)s
Day of the Week (0:Monday): %(weekday)s
Hour 00->24: %(h24)s
Hour 00->12: %(h12)s
Minute: %(min)s
Second: %(sec)s

获取序列

ir.sequence对象提供了获取当前序列号的方法:

根据Sequence Code获取当前序列号

@api.model
def next_by_code(self, sequence_code, sequence_date=None):
    pass

next_by_code方法接收两个参数:

sequence_code: 序列代码 sequence_date: 序列日期。序列支持根据一段时间内,使用指定的序列。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值