← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 863221] Re: [6.0] ir_sequence does'nt work with multi_company

 

hello,

thanks for your video.

But now can you create an new company "" with "Shop 1" as parent.
After create a new user with this new company.
Create a new sequence for this new company.

And try the new sequence.

For me it's clear in the code...the company used it's not the compagy of
the user.

""""
        company_ids = self.pool.get('res.company').search(cr, uid, [], context=context)

        cr.execute('''SELECT id, number_next, prefix, suffix, padding
                      FROM ir_sequence
                      WHERE %s=%%s
                       AND active=true
                       AND (company_id in %%s or company_id is NULL)
                      ORDER BY company_id, id
                      FOR UPDATE NOWAIT''' % test,
                      (sequence_id, tuple(company_ids)))
        res = cr.dictfetchone()
"""
company_ids it's all the companies.
res it's the first return of the select.
So it's the sequence for the company which has the minimal id ?

Thanks

-- 
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to OpenERP Project Group.
https://bugs.launchpad.net/bugs/863221

Title:
  [6.0] ir_sequence does'nt work with multi_company

Status in OpenERP Server:
  Incomplete

Bug description:
  On ~openerp/openobject-server/6.0 since rev 3460:

  "rev 3460 : [MERGE] Merged ILA's branch for the fix of correction in
  get_id() of ir_sequence to allow multi-company feature"

  It's does'nt work if you use multi-company feature...

  Now the sql query select every sequences for all companies (for the
  object) order by company_id, but there is a  cr.dictfetchone() after
  sql response...

  For example, when you create a sale_order (or any other objects), the sequence returned is the for the first company_id found.
  However we need to have the specific sequence of the active user's company .

  So the code of ir_sequence.py before rev 3460 works fine with multi-
  company

  ir_sequence.py, line 78 rev 3460:
   - company_id = self.pool.get('res.users').read(cr, uid, uid, ['company_id'], context=context)['company_id'][0] or None
  + company_ids = self.pool.get('res.company').search(cr, uid, [], context=context)

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-server/+bug/863221/+subscriptions


Follow ups

References