Se rendre au contenu
Menu
Cette question a été signalée
3 Réponses
5760 Vues

hello,

i want to change the sale quotation numbers easily like in odoo V8, how it's possible ?

  • Screen odoo v9 : http://hpics.li/f3699e2

  • Screen odoo v8 : http://hpics.li/35a8a30

Thanks in advance,

Have a nice day.

Avatar
Ignorer
Meilleure réponse

- activate the developer mode

- go to "Settings/Sequences & Identifiers/Sequences"


Avatar
Ignorer
Auteur

Thanks for this tips but there is no way to change it like in Version 8 ? (module or tips)

What exactly is your problem, creating different sequences for quotations and sales orders or creating a sequence in the style of your example? If it is the latter, please see my amended answer

Meilleure réponse

It will help you

override create function in model sale.order

from openerp import models 
import datetime


class SaleOrder(models.Model):
    _inherit = 'sale.order'

    def create(self, cr, uid, vals, context=None):
        if context is None:
            context = {}
        if vals.get('name', '/') == '/':
            vals['name'] = self.pool.get('ir.sequence').get(cr, uid, 'sale.order', context=context) or '/'
        # ================== ADDITIONAL LINES ================================================
        now = datetime.datetime.now()
        vals['name'] = vals['name'].replace('SO', now.year) # GIVE YEAR FOR EXAMPLE
        # ====================================================================================
        if vals.get('partner_id') and any(f not in vals for f in ['partner_invoice_id', 'partner_shipping_id', 'pricelist_id', 'fiscal_position']):
            defaults = self.onchange_partner_id(cr, uid, [], vals['partner_id'], context=context)['value']
            if not vals.get('fiscal_position') and vals.get('partner_shipping_id'):
                delivery_onchange = self.onchange_delivery_id(cr, uid, [], vals.get('company_id'), None, vals['partner_id'], vals.get('partner_shipping_id'), context=context)
                defaults.update(delivery_onchange['value'])
            vals = dict(defaults, **vals)
        ctx = dict(context or {}, mail_create_nolog=True)
        new_id = super(sale_order, self).create(cr, uid, vals, context=ctx)
        self.message_post(cr, uid, [new_id], body=_("Quotation created"), context=ctx)
        return new_id
Avatar
Ignorer
Publications associées Réponses Vues Activité
2
mars 24
3433
1
mars 15
5105
1
mars 15
4238
0
août 25
4109
1
nov. 23
2416