Hi. I want to get rid of the first field when creating a new object. Similar to how invoices are automatically assigned an ID, I'd like to do that to some custom models I have created.
Please help!
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- إدارة علاقات العملاء
- e-Commerce
- المحاسبة
- المخزون
- PoS
- Project
- MRP
لقد تم الإبلاغ عن هذا السؤال
Hi Salomon Cohen,
Yes, you can achieve it using sequence for your custom model
=> For that first of create a field for the storing sequence of custom model
Please find code in comment.
Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari
Please find code here :-
sequence_no = fields.Char(string='Sequence', required=True,readonly=True,
default=lambda self: _('New'))
=> Add function for the sequence in the following code
@api.model
def create(self, vals):
if vals.get('sequence_no', ('New')) == ('New'):
vals['sequence_no'] = self.env['ir.sequence'].next_by_code(
'custom.model') or _('New')
res = super(CustomModel, self).create(vals)
return res
=> And create a record for that and create an XML file
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="seq_custom_model" model="ir.sequence">
<field name="name">Custom Model Sequence</field>
<field name="code">custom.model</field>
<field name="prefix">CM</field>
<field name="padding">3</field>
<field name="company_id" eval="False"/>
</record>
</odoo>
هل أعجبك النقاش؟ لا تكن مستمعاً فقط. شاركنا!
أنشئ حساباً اليوم لتستمتع بالخصائص الحصرية، وتفاعل مع مجتمعنا الرائع!
تسجيلالمنشورات ذات الصلة | الردود | أدوات العرض | النشاط | |
---|---|---|---|---|
|
1
سبتمبر 24
|
1644 | ||
|
2
يوليو 24
|
1802 | ||
|
1
أبريل 24
|
4809 | ||
|
0
يناير 24
|
1389 | ||
|
0
أكتوبر 23
|
1397 |