Odoo Help


How to add a sequence a field?

James Ford
on 2/26/16, 6:29 AM 1,897 views

Hello, i've one doubt:

I created a field called ' niu ' to increase its value for each product type stockable.

niu = fields.Char(string="NIU", compute="_niu_validation", defalut=" ", readonly=True)

With the attribute compute = "_ niu_validation " I call the method of the same name . In this , I want to validate that the product type is stockable type .


def _niu_validation(self):

if 'product_id.product_tmpl_id.type' == 'product':

niu = lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'sale.order.line')

return super(SaleOrderLine,self)

<?xml version="1.0" encoding="utf-8"?>


<data noupdate="1">

On the other hand I created the render sequence for ' niu ' field in sale.order.line model.

<!-- Sequence for sale.order.line -->

<record id="seq_sale_order_line" model="ir.sequence">

<field name="name">NIU Sequence</field>

<field name="code">sale.order.line</field>

<field name="prefix">00</field>

<field name="padding">3</field>




And in the view , I want for each product type stockable, the field 'niu' increase its value.

Image: http://en.zimagez.com/zimage/viewsequenceniu.php

Please I need help because I 've been a long time on this and I can't do it on my own. I hope your help , advice , recommendations. Thank you very much to all.


Jignesh Mehta

--Jignesh Mehta--
| 6 5 8
Surat, India
--Jignesh Mehta--

- I have 3+ years of Industry Experience, specializing Odoo Development, Analysis, Customization, Implementation, Integration.
- I have done many Customization modules in Sale, Purchase, Point of Sale, Inventory, CRM and much more. Also Worked in the Odoo Themes like Business Theme or E-Commerce Theme.
- Develop Jewelery Manufacturing process from Scratch. It have more than 10 Department. Develop PDF and Excel reports for this project around 150 per format.

Jignesh Mehta
On 3/2/16, 8:24 AM

Hello James,

Try Below field definition and code for create sequence automatically.

Field Definition :-

niu = fields.Char('NIU', readonly=True, select=True, copy=False, default='New')

Create Method :-


def create(self, vals):

    if vals.get('name', 'New') == 'New':

        vals['name'] = self.env['ir.sequence'].next_by_code('model.name') or 'New'

    result = super(ModelName, self).create(vals)

    return result

Hope it works for you.


About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 2/26/16, 6:29 AM
Seen: 1897 times
Last updated: 3/2/16, 8:24 AM