ForgeFlow / ddmrp

DDMRP
GNU Affero General Public License v3.0
14 stars 17 forks source link

DDMRP and classic orderpoint rule in Odoo #32

Closed florian-dacosta closed 6 years ago

florian-dacosta commented 6 years ago

Hello, I was wondering it there was a strong reason to disable odoo native orderpoint when installing ddmrp? Indeed, installing this (great) suite of module, can be quite a big step for a company, we were wondering if it could be done to install it and use it juste for some products, in order to get use to it, adjust the parameters, etc... And continue using the native Odoo orderpoint system for other products.

From what I saw, it could be done easily with some little changes (that could be done in an other small module for instance), like making this part : https://github.com/Eficent/ddmrp/blob/9.0/ddmrp/models/procurement_order.py#L31 optional, adding a flag on orderpoints to tell if it should compute with ddmrp logic or odoo native logic, to avoid recomputation by crons, etc...

Anyway, I am not asking to change the module, but I would like to have your opinion about this. From my point of view, it is obviously always the goal to use the ddmrp logic for all products, but during a transition period, for big companies to adapt, I guess it could be nice to be able to use both.

To cut a long story short : the reason behind this limitation is more technical (it complicate the code to allow both method) or more functional ?

Thank you for this very good work! @jbeficent @lreficent

LoisRForgeFlow commented 6 years ago

Hi @florian-dacosta

I would say that the reasons are more functional, some considerations:

Let me know if you have some extra questions!

florian-dacosta commented 6 years ago

Hi,@lreficent thanks a lot for your answer! You say that there are min-max buffers type in the ddmrp module, but I did not find this, I guess I am missing something, can you explain me briefly how to achieve this?

For our case, the buffers will only concern bought product, no produced one. And it concerns a lot of product, that's why it seems complicated to configure ddmrp for all products all at once, and it also seems dangerous. That is why we were thinking to do it little by little, but of course, the end goal is to manage all these products with the ddmrp method, introducing it gradually.

Our goal would be to really manage a product with ddmrp method and an other product with min/max rule, but of course, we would not manage a unique product with both method.

Well thanks again for your opinion on the matter

JordiBForgeFlow commented 6 years ago

@florian-dacosta You can set a buffer as min-max indirectly, through the attribute 'replenish method' in the buffer profile. See https://github.com/Eficent/ddmrp/blob/9.0/ddmrp/models/stock_buffer_profile.py#L40

florian-dacosta commented 6 years ago

I did miss that. Great, I will definitly try it! Thanks