콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
2 답글
8736 화면

Only allow some products to be selected in a new quotation. This would be dependent on the user logged in.

Some users will see more products. Other users will see less products.

This will be in effect for new quotations only.

For previously created quotations by higher users, the product restriction will not be in effect even if the lower user logs in.

The restriction will be only for new quotations by lower user, who should only be able to see some products.

The higher user can see all products. Once the higher user does the quotation. The lower user will process the quotation to sales order and finally to invoice.

Is there a module that can restrict the display of products depending on the user login?

아바타
취소

Hi,


Have you found any solution?


Regards,

베스트 답변

Hello,

With record rules, I would define a "read access" rule for the lower user group that only allows them to see a certain category of product.

Hope it helps,


아바타
취소
베스트 답변

Hi, 

Try adding a many2many field in res.users like below,

allowed_product_ids = fields.Many2many("product.template", string="Allowed Products")

Then add this below record rule to product.template model,

<odoo>


    <record id="product_users_id" model="ir.rule">


        <field name="name">Allowed Products</field>


        <field ref="product.model_product_template" name="model_id"/>


        <field name="domain_force">[('id', 'in', user.allowed_product_ids)]</field>


        <field name="groups" eval="[(4, ref('base.group_user'))]"/>


        <field name="perm_read" eval="True"/>


        <field name="perm_write" eval="True"/>


        <field name="perm_create" eval="True"/>


        <field name="perm_unlink" eval="True"/>


        <field name="active" eval="True"/>


    </record>


</odoo>


Regards

아바타
취소
관련 게시물 답글 화면 활동
0
10월 15
3404
0
10월 20
4316
1
3월 15
5060
3
3월 22
17244
2
3월 15
11377