This question has been flagged
2 Replies
5918 Views

Hello all,

I want to calculate number of users in openerp. here is my code. Please let me know this code is correct or not.

Thanks in advance....

 

        user_ids = self.pool.get('res.users').search_count(cr, uid, ids, context=context)        
        use_user_count = len(user_ids)

Avatar
Discard
Best Answer

You cannot pass 'ids' here, you need to pass the domain i.e. the search criteria and search_count will directly return the 'count', so no need to use 'len' function.

It should be like

domain=[]

u_count = self.pool.get('res.users').search_count(cr,uid,domain,context=context)

Here it will not count inactive users, for that you can do the following:

domain=[]

my_context=dict(self._context)

my_context.update({'active_test':False})

u_count = self.env['res.users'].with_context(my_context).search_count(domain)

Hope this helps

Avatar
Discard
Author

Thanks....

Author

i tried 2nd method but i get this error NotImplementedError: 'update' not supported on frozendict

I have updated the post. Check it and let me know if that worked

Author

I got this error "AttributeError: 'test.model' object has no attribute 'env'"

Best Answer

            rec=self.env['res.users'].search([('active','=','TRUE')])
            print len(rec)

Avatar
Discard