IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Odoo (ex-OpenERP) Discussion :

Définir une valeur autre que "0" pour commencer une numérotation incrémentale


Sujet :

Odoo (ex-OpenERP)

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2013
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2013
    Messages : 121
    Par défaut Définir une valeur autre que "0" pour commencer une numérotation incrémentale
    Bonjour,

    Je voudrais pouvoir commencer une numérotation automatique à partir, par exemple, de "1000".

    J'ai déjà le code de la création des champ "N° de client" et "N° de fournisseur" mais il me manque le code pour débuter à une valeur autre que "0".

    Un GRAND merci pour votre aide.

    JMB


    .xml file :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     <?xml version="1.0"?>
        
        <openerp>
        <data>
        <record id="view_mutante_form" model="ir.ui.view">
                <field name="name">res.partner.form.inherit</field>
                <field name="model">res.partner</field>
                <field name="inherit_id" ref="base.view_partner_form" />
                <field name="arch" type="xml">
            <xpath expr="/form/sheet/group/group/label[@for='street']" position="before">
                <field name="n_client" attrs="{'invisible':[('customer','!=',True)]}"/>
                <field name="n_supplier" attrs="{'invisible':[('supplier','!=',True)]}"/>
            </xpath>
            </field>
        	</record>
        </data>
        	<data noupdate="1">
                <record model="ir.sequence.type" id="seq_type_res_partner">
                    <field name="name">number_client_sequence</field>
                    <field name="code">res.partner.customer</field>
                </record>
                <record model="ir.sequence" id="seq_res_partner">
                    <field name="name">number_client_sequence</field>
                    <field name="code">res.partner.customer</field>
                    <field name="prefix">C</field>
                    <field name="padding">6</field>
        		</record>
        		<record model="ir.sequence.type" id="seq_type_res_supplier">
                    <field name="name">number_supplier_sequence</field>
                    <field name="code">res.partner.supplier</field>
                </record>
                <record model="ir.sequence" id="seq_res_supplier">
                    <field name="name">number_supplier_sequence</field>
                    <field name="code">res.partner.supplier</field>
                    <field name="prefix">S</field>
                    <field name="padding">6</field>
                </record>
        </data>
        </openerp>
    .py file :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
       # -*- coding: utf-8 -*-
        
        from openerp.osv import fields, osv
        
        import openerp.addons.decimal_precision as dp
        
        class res_partner(osv.osv):
        	_inherit = 'res.partner'
        	_name = 'res.partner'
        
        	_columns = {
        		'n_client' : fields.char('Client Number', size=64, readonly=True),
        		'n_supplier' : fields.char('Supplier Number', size=64, readonly=True),
        	}
        	_sql_constraints = [
        		('name_uniq_1', 'unique(n_client)', 'Number of client must be unique!'),
        		('n_supplier_uniq', 'unique(n_supplier)', 'Number of supplier must be unique!'),        
        	]
        
        	def create(self, cr, uid, vals, context=None):   
        
        		if vals.get('n_client') == None:
        			vals['n_client'] = self.pool.get('ir.sequence').get(cr, uid, 'res.partner.customer')
        
        		if vals.get('n_supplier') == None:
        			vals['n_supplier'] = self.pool.get('ir.sequence').get(cr, uid, 'res.partner.supplier')
        		return super(res_partner,self).create(cr, uid, vals, context)
        
        	def copy(self, cr, uid, id, default=None, context=None):
        		default.update({
        			'n_client': self.pool.get('ir.sequence').get(cr, uid, 'res.partner.customer'),
        			'n_supplier': self.pool.get('ir.sequence').get(cr, uid, 'res.partner.supplier')
        		})
        		return super(res_partner, self).copy(cr, uid, id, default, context)
        
        res_partner()

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Bonjour,

    Essaie de rajouter le champ "number_next_actual" dans ton xml :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <field name="number_next_actual">1000</field>

  3. #3
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2013
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2013
    Messages : 121
    Par défaut
    Merci pour ta réponse :-)

    Alors j'ai essayé de rajouter ton code dans mon xml mais ça ne change rien. Pas d'erreur mais la numérotation continue comme avant (C00001, etc.).

    Une autre idée ?

  4. #4
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Alors il est probable que ça fonctionne à l'installation du module (lors de la création de la séquence) mais que ça ne fonctionne pas à la mise à jour

    Logique car sinon, à chaque fois que tu mets à jour le module, la séquence repartirait à 10000

    L'autre solution, c'est dans Configuration -> Technical > Séquences et identifiants > Séquences et modifier la valeur dans le formulaire (directement dans la DB)

  5. #5
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2013
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2013
    Messages : 121

  6. #6
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Super, merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 11
    Dernier message: 16/04/2015, 10h26
  2. Réponses: 2
    Dernier message: 29/01/2013, 16h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo