Odoo Help


This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


hiding recipe from users

Andri Gunawan
on 10/10/13, 7:19 AM 1,999 views

Hi, Is it possible to hide recipe that we use in the production in OpenERP? I don't want my staff to know the recipe I use to produce my products, but I want to track the inventory levels of the ingredients to use the recipe

eg. Product A requires 100 Kg of flour and 1 unit of recipe 1 Recipe requires 20 Kg of Ingredient A, 10 Kg of Ingredient B

Hi Andri, You can hide bill of materials from other users using securtiy groups. You can goto "Settings >> Technical >> User Interface > Menu Items" and then choose "Manufacturing/Products/Bill of Materials" or any menu item you want to hide. Then edit and add the group which contains only you. So that you can monitor and it will be hidden for other users. You can also do that in your custom module xml, by the inheriting the action and corresponding menu item, then add groups="your_grour_id" to the menu item.

Akhil P Sivan
on 10/21/14, 3:41 AM

I couldn't post it as answer becasuse its showing 20 karma needed!

Akhil P Sivan
on 10/21/14, 3:44 AM
Andri Gunawan
On 10/10/13, 10:46 AM

I was thinking.. what if we make the ingredients with not useful name like..

Ingredient A instead of Sugar Ingredient B instead of Salt Ingredient C instead of Pepper

Then create the BoM of Recipe with Ingredient A x 10 Kg, Ingredient B x 5 Kg, Ingredient C x 1 Kg? That way no one really knows what Ingredient A, B, or C is other than me who knows what A B C means.

It's easier than editing Record Rules, etc (which I have no idea how!)

The problem with that is, what happens when you want to place an order/ purchase order for your ingredients? how will anyone know what to buy unless you will be the one to be doing all the buying from your suppliers.

on 10/10/13, 11:36 AM

actually the ones who is doing the purchasing of those ingredients are my own family. i just don't want other people/staff to know my recipes (how much i use etc)

Andri Gunawan
on 10/10/13, 1:34 PM

Ok but the production guys will still need to know what they are doing. The only solution that I can think of is a little complex because it requires you have the real name used as a BoM of the fake names so when you use the fake the system deduct the real name products and you can have you recipe based on the fake names.

on 10/10/13, 2:20 PM

With my solution, the production guys just need to use Recipe x 1 for each product they make plus other non-secret ingredients. This "Recipe" is a "prepared mix" inside a box, all they have to do is pour the Recipe in along with other non-secret ingredients, so the production guys never know what is inside and how much is inside all this time.

Andri Gunawan
on 10/10/13, 9:53 PM

But I'm also interested with what you were saying. Can you please elaborate more?

Andri Gunawan
on 10/10/13, 9:54 PM

You set up the real products in the system with the real names, this is because when the system generates a purchase order you need realistic names for the suppliers to know what you are after. Then you set up the fake names also. You then create a BoM for the fake name with the real name as product with one to one ration and also set the BoM type for as phantom. So the fake name is practically the real name. You then Create your recipes with the fake names. Set the fake name as make to order and the real make to stock. So when you producce the system picks the fake names

on 10/11/13, 7:06 PM
On 10/10/13, 1:41 PM

The best way to hide your recipes is to manage mrp by yourself. Anyway, manufacturing manager must know recipes and also machine operators and manufacturing workers must know recipes. Salesman don't need to know recipes if you encode correct bill of materials, routing and procurement rules. When they encode a SO, the procurement rule generate MO who is viewed only by mrp manager or you. Purchasing and requisition users also don't need to know recipes to encode purchasing of raw materials if procurement (MTO, MTS and suppliers) is well configured. For this include in mrp managers and mrp users groups only your user, mrp manager user and mrp users that you want. Exclude from that groups other users (sales man, accountant etc.).


Daniel Reis

--Daniel Reis--
| 6 7 9
Lisbon, Portugal
--Daniel Reis--

Author of the "Odoo Development Essentials" book.

Applications Manager at Securitas Portugal

Github: https://github.com/dreispt

Twitter; @reis_pt

Daniel Reis
On 10/10/13, 8:33 AM

Generally speaking YES, you can use Record Rules for this (probably you're talking about BoMs).

But the specific solution may vary, depending on which users do what, and what impact does not beeing able to quey the BoM will impact on your processes.

A solution might involve some things being run by the scheduler, using the Admin user, or in the worst case modify some Python source code to use uid=1 instead of the current user for some key function calls.

On 10/10/13, 8:49 AM

If you are the only one that make use of the manufacturing module then you can simply only allow the administrator (you) have access to the module. But is other people help, then how are they suppose to know how to prepare what they are making. You can also make the line part of the BoM only viewable by the administrator. In both cases, look for the string that is displaying the views in their xml and add base.group_system. and this will simply hide the view from anyone that is not logged in as an administrator with full access

On 10/10/13, 7:26 AM

hi Andri ,

Important : If you delete a parent menu, then all its children appear at the top level.

----> Solution : Settings > Users > Groups, select a group.... add/remove menu items on Access Menu.

i'm sorry but i think you misunderstood me. what i would like to achieve is other people cannot see "Recipe 1" consists of Ingredient A x 20 Kg and Ingredient B x 10 Kg. Basically hide what's consumed from "Recipe 1" BoM

Andri Gunawan
on 10/10/13, 7:46 AM

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)


Asked: 10/10/13, 7:19 AM
Seen: 1999 times
Last updated: 3/16/15, 8:10 AM