This question has been flagged
1 Reply
1539 Views

i want to create a sequence field in the res.partner model, from my custom module (my_module) 


for that i proceeded this way 

class ResPartner(models.Model):

    _inherit = 'res.partner'

account_number_is = fields.Char(string="Account Number")

@api.model def create(self, vals): if vals.get('account_number_is', ('New')) == ('New'): vals['account_number_is'] = self.env['ir.sequence'].next_by_code('acount.number.test') or ('New') result = super(ResPartner, self).create(vals) return result


and in the /data/sequence.xml i declared my sequence 

 <record id="seq_scanning_test" model="ir.sequence">
            <field name="name">Account Number Test</field>
            <field name="code">acount.number.test</field>
            <field name="prefix">Bq/</field>
            <field name="padding">4</field>
            <field name="company_id" eval="False"/>
        </record>

what i realize is that the create function dosent find the sequence because it isn't in the same model, so for that i tried this code 


@api.model 
    def create(self, vals):
        if vals.get('account_number_is', ('New')) == ('New'):
            vals['account_number_is'] = self.env['ir.sequence'].next_by_code('my_module.acount.number.test') or ('New')
        result = super(ResPartner, self).create(vals)
        return result 



but still dosent work yet, what i am still missing ? 

Avatar
Discard
Best Answer

The code in your first create method looks good to me. Just make sure you have added the sequence.xml file in the __manifest__.py file in the data section.

Avatar
Discard
Author

yes i had declared it in the __manifes__.py but the problem is i suppose is that the create methode dosent find the code refering to the sequence, because it dosent exists in the same model (res.partner), instead it is in my_module module