Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
13388 มุมมอง

I need to domain treeview if current user is manager of the department.

In my model:

department_new = fields.Many2one('hr.department', 		
    string='New department', 
    required=True)
manager_new = fields.Many2one('hr.employee', readonly=True)

@api.multi

def action_send(self):

self.manager_new = self.department_new.manager_id

return self.write({ 'stage' : 'sent' })

and in my view:

<record model="ir.actions.act_window" id="action_my_income_transfers">
  <field name="name">Transfer requests</field>
  <field name="type">ir.actions.act_window</field>
  <field name="res_model">employee.transfer</field>
  <field name="view_type">form</field>
  <field name="view_mode">tree,form</field>
  <field name="domain_force">[('stage', '=', 'confirmed_cur'),('manager_new.id','=',uid)]</field>
</record>

But ('manager_new.id','=',uid) always false

 Filed manager_new is right if show it as field in form

Similar using uid in another act_window works right

<record model="ir.actions.act_window" id="action_my_transfers">
  <field name="name">Transfer requests</field>
  <field name="type">ir.actions.act_window</field>
  <field name="res_model">employee.transfer</field>
  <field name="view_type">form</field>
  <field name="view_mode">tree,form</field>
  <field name="domain">[('user_id', '=', uid)]</field>
</record>
user_id = fields.Many2one('res.users', string='user id', default=lambda self: self.env.user.id)

How can i solve this problem?

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hi,

Change this line.

<field name="domain_force">[('stage', '=', 'confirmed_cur'),('manager_new.id','=',uid)]</field>

to

<field name="domain">[('stage', '=', 'confirmed_cur'),('manager_new','=',uid)]</field>

maybe your problem will solve.


Thank you.

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
0
ต.ค. 23
1773
5
ก.ย. 20
12794
1
เม.ย. 18
4608
1
มี.ค. 15
5267
2
มี.ค. 15
7465