Odoo Help

1

0
4 Answers
1
Avatar

Ludo - 21South

--Ludo - 21South--
2470
| 3 2 7
Zwijndrecht, Netherlands
--Ludo - 21South--

Developer

Ludo - 21South
2015/02/13 5:14

If you simply want to create a record for any table (on API v7) you only need to call the create method and supply the required fields. For example, if you are on the view for sale orders and for some season you need to create a product, you could use following code:

product_obj = self.pool.get('product.product')

product_id = product_obj.create(cr, uid, {'name': 'My product'})

In this case, product only needs a name to be supplied in the function, but any other object needs to have a dictionary of required fields to be supplied. Of course this can also be used in a loop if you want to generate multiple entries. Something like so:

product_obj = self.pool.get('product.product')

names_list = ['item1', 'item2', 'item3']

for name in names_list:

    product_id = product_obj.create(cr, uid, {'name': name})

This is under the assumption that you use the ORM on Odoo v7. If you use the new API, creation is only slightly different.

1
Darius Martinkus
2015/02/13 6:27

Thanks guys really helpful!


 

0
Avatar

Vasanth

--Vasanth--

3893
| 6 3 10
Pondicherry, India
--Vasanth--
Vasanth
2015/02/13 5:48

Try this :

You add this In py:

    _columns = {

        'id_no' : fields.char('id no', size=64),
}

    _defaults = {
        'id_no': lambda self,cr,uid,context={}: self.pool.get('ir.sequence').get(cr, uid, 'sequence_code'),
}

    def add(self, cr, uid, ids, context):
        vals = {}
        vals['id_no'] = 'Pre'+ids[0]
        self.create(cr, SUPERUSER_ID, vals, context)
        return True

 

In view:

<record>
----------
 <field name="id_no"/>
<button name="add" colspan="1" string="Add" type="object" />
</record>

<record id="seq_unique_id" model="ir.sequence.type">
<field name="name">my_sequence</field>
<field name="code">sequence_code</field>
</record>

<record id="seq_unique_id2" model="ir.sequence">
<field name="name">my_sequence</field>
<field name="code">sequence_code</field>
<field name="prefix">prefix</field>
<field name="padding">3</field>
</record>

0
Avatar

Temur

--Temur--

3297
| 7 5 9
Tbilisi, Georgia
--Temur--
Programmer
Temur
2015/02/13 5:15

If you're looking for an example, there is one at page "Accounting/Configuration/Periods/Fiscal Years" when you create new fiscal year, there is two buttons "Create Monthly Periods" and "Create 3 Months Periods" with exactly same behavior as you're truing to implement. So you can take look and you'll get idea how to continue.

Ask a Question
Keep Informed
1 follower(s)
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.

Register
Odoo Training Center

Access to our eLearning platform and experience all Odoo Apps through learning videos, use cases and quizzes.

Test it now