跳至内容
菜单
此问题已终结
3 回复
6254 查看

Some users have outsourced salespeople which not necessarily will be Odoo users. In order to keep track of the sales done by outside salespeople, creating a portal user for them and assigning them to sales orders is a good workaround

形象
丢弃
编写者 最佳答案

Activate Developer Mode.

Go to sales.order, form view.

Click on the bug right next to your user on the top right of the screen > Edit View: Form


Go to Inherited Views >  go to the Odoo Studio view (or create a new inherited view):



Add this xpath to change the domain of the field user_id :

 

<xpath expr="//field[@name='user_id']" position="attributes">

<attribute name="domain">["|",["groups_id","in",23],["groups_id","in",8]]</attribute>

</xpath>


Make sure that you are adding the groups_id for the group “Portal” and “User: Own Documents Only” (from Sales). This can vary according to each database.

形象
丢弃
最佳答案

 

 .

形象
丢弃
最佳答案

In case anyone was wondering:

The solution worked perfectly without needing to access the backend. Unfortunately, the same solution applied to the Odoo Studio view or other views in the Contacts module does not affect the Salesperson field.

Solution in Contact module:

  1. Go to Contacts and open any contact.
  2. Open Studio.
  3. Click on Salesperson and then Domain.
  4. Edit the filter to: ["|", ("share", "=", False), ("share", "=", True)]
形象
丢弃

Did you read the part at the bottom where he posted "Make sure that you are adding the groups_id for the group “Portal” and “User: Own Documents Only” (from Sales). This can vary according to each database."

This means 23 and 8 may not exist in your database with the same ID's

Your solution is also good, perhaps better, but let's not tell Lucas about it as he is busy running our office in Brazil right now.

相关帖文 回复 查看 活动
1
4月 25
7703
0
3月 25
1300
1
3月 25
30
0
3月 25
1154
3
9月 24
5530