Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
2 Antworten
6802 Ansichten

i want to update my field depend on current user's group , but when i execute the method it update all the record even it has the other group .

here's the code :

def wtc_approval(self, cr, uid, ids,vals, context=None):
        user = self.pool.get("res.users").browse(cr, uid, uid)['groups_id']
        data = self.pool.get("wtc.approval.line").browse(cr,uid,user)
        line = self.browse(cr, uid, ids, context=context)
   
        for user in line.app_line:
            line.app_line.write({
                                   'sts':'2',
                                   'pelaksana':uid,
                                   'tanggal':datetime.today()
                                   })
           return True

i don't know how to get current user group , the code always catch all group ..

anybody know how to resolve it ?

Thanks in advance

Avatar
Verwerfen
Beste Antwort

You can try to find whether the user has Group access for a particular group.

Flag = self.pool.get('res.users').has_group(cr,create_uid.id , 'base.group_sale_manager')

If access is available, then it is TRUE.

Avatar
Verwerfen
Beste Antwort

Openerp has a build in mechanism to restrict access per model / record:

  • Access Control List
  • Record Rule

Generally you can configure access control per model (ex. write access for certain group), openerp will do the checking for you.

The other is condition in workflow transition: you can set group in workflow transition, so that it can be triggered only by that group.

So in many cases you don't have to write some code to check user's group.

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
9
März 20
42103
2
Okt. 18
4016
1
Okt. 17
4253
1
März 15
4707
2
Apr. 23
4319