Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[17.0] [MIG] stock_available: Migration to 17.0 #20

Merged
merged 65 commits into from
May 3, 2024

Conversation

bizzappdev
Copy link

No description provided.

Lionel Sausin (Numérigraphe) and others added 30 commits April 25, 2024 10:28
Generic module to compute the stock quantity available to promise using several implementations.
stock_available_immediatly is changed to become the first optional implementation.
Cherry pick of commit 0b060f619fa5d60f9fb343afe1154acd5c730148 from the v7 branch

[IMP] stock_available* uses new API

[ADD] stock_available_mrp

Module to take immediate manufaturing capability into account in the stock quantity available to promise.

Conflicts:
	stock_available/res_config.py

[DEL] move stock_available_mrp to __unported__

[ADD] stock_available_sale

Take sale quotations into account in the stock quantity available to promise
Cherry-picked from 497068f5f5f1d65fdd4a6e90a787eba37b4e3232

Conflicts:
	stock_available/res_config.py

[DEL] move stock_available_sale to __unported__

[IMP] READMEs and TODOs

Cherry-picked from v7 at 8add4bea7e91924983fb29966e14a1f0d4d5332e

Conflicts:
	__unported__/stock_available_mrp/__openerp__.py
	stock_available/__openerp__.py
	stock_available_immediately/__openerp__.py

[IMP] respect product decimal precision

odoo/odoo#5512 and odoo-dev/odoo@b3e5a94 makes it clear the standard intends to support decimal precision on the product form.
…uct and

product.template, now takes in account variants and correctly displays value.
[FLAKE8]

Removing duplicate modules and moving README.rst into __unported__

[ADD} location calculations

[FIX] typo
not using internal qty_available that seems not to
take in consideration reserved quants.

[ADD] Tests
Commit 6c16913 changed the way we compute the immediately_usable_qty: instead of using the virtual stock, we used the sum of quants without reservations. But a quant may actually be reserved and still be available (for example it may be reserved for an internal move).
Fixes OCA/stock-logistics-warehouse#79

Remove loop and use correct decorator

Restore the features of stock_available_immediately

The previous fix restored stock_available but then there was no way to exclude the incomming moves from the count. This belongs in stock_available_immediately, restoring it cleanly.
This commit also takes care to respect the distinction between templates and variants, so it should fix OCA/stock-logistics-warehouse#73 too.

Restore the qty avail. to promise on variant treeview

PEP8
* fix the dependencies for the computed field

* use api.multi instead of api.one to avoid calling
  super()._immediately_usable_qty in a loop (this improves perfs on a tree view
  display)
There are cases where we dot NOT want to simply sum the quantities of all the
variants. For example when dealing with manufacturing capacities, we may have
to chose between variants because we can't make ALL of them with the same
components.

So instead of a simple non-modular implementation, we'll let each module define
his own implementation of how to compute the product template's quantity
available for sale.

Conflicts:
	stock_available/__openerp__.py
	stock_available_immediately/__openerp__.py
[CHG] improve code regarding code review

[ADD] add test

[CHG] optimize stock computation by avoiding to call useless compute
… related unit test

Increase version number of the module
Currently translated at 61.9% (13 of 21 strings)

Translation: stock-logistics-warehouse-11.0/stock-logistics-warehouse-11.0-stock_available
Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-warehouse-11-0/stock-logistics-warehouse-11-0-stock_available/ar/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: stock-logistics-warehouse-12.0/stock-logistics-warehouse-12.0-stock_available
Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_available/
Currently translated at 100.0% (21 of 21 strings)

Translation: stock-logistics-warehouse-12.0/stock-logistics-warehouse-12.0-stock_available
Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_available/pt_BR/
Currently translated at 23.8% (5 of 21 strings)

Translation: stock-logistics-warehouse-12.0/stock-logistics-warehouse-12.0-stock_available
Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_available/zh_CN/
Currently translated at 100.0% (21 of 21 strings)

Translation: stock-logistics-warehouse-12.0/stock-logistics-warehouse-12.0-stock_available
Translate-URL: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_available/zh_CN/
@bizzappdev
Copy link
Author

Code review.

Even if I suggest to move the 'mrp' configuration in the mrp available related module.

I'm not sure If I understand you correctly, but If we move the MRP configuration to the available MRP module, then that configuration will not be useful. This configuration itself is installing the module.

@pedrobaeza
Copy link
Member

For me, that configuration should go out, as it's very poisoned: if the module is not migrated, it's not working and do users to put issues about it. And even if the module is migrated, I don't like the checks that install modules without total user awareness.

@bizzappdev
Copy link
Author

For me, that configuration should go out, as it's very poisoned: if the module is not migrated, it's not working and do users to put issues about it. And even if the module is migrated, I don't like the checks that install modules without total user awareness.

I concur with your point @pedrobaeza . Let me remove it.
Also there is a configuration for installing stock_available_immediately, That should also go away IMO.

@bizzappdev bizzappdev force-pushed the 17.0-mig-stock_available-BAD branch 2 times, most recently from e87465d to b23df56 Compare May 2, 2024 06:54
@bizzappdev
Copy link
Author

For me, that configuration should go out, as it's very poisoned: if the module is not migrated, it's not working and do users to put issues about it. And even if the module is migrated, I don't like the checks that install modules without total user awareness.

@pedrobaeza @rousseldenis Removed the configuration for module installation.

@bizzappdev bizzappdev requested a review from rousseldenis May 2, 2024 07:28
@bizzappdev bizzappdev force-pushed the 17.0-mig-stock_available-BAD branch from b23df56 to a00d4ee Compare May 2, 2024 08:57
@bizzappdev bizzappdev force-pushed the 17.0-mig-stock_available-BAD branch 2 times, most recently from 4702d03 to 283c907 Compare May 2, 2024 09:12
@pedrobaeza
Copy link
Member

@rousseldenis do you see correct to remove that field? Or maybe I'm misunderstanding the meaning of it?

@rousseldenis
Copy link
Contributor

Yes, that seems fair for me.

@OCA-git-bot
Copy link
Contributor

This PR has the approved label and has been created more than 5 days ago. It should therefore be ready to merge by a maintainer (or a PSC member if the concerned addon has no declared maintainer). 🤖

@dreispt
Copy link
Member

dreispt commented May 3, 2024

/ocabot merge nobump

@OCA-git-bot
Copy link
Contributor

Hey, thanks for contributing! Proceeding to merge this for you.
Prepared branch 17.0-ocabot-merge-pr-20-by-dreispt-bump-nobump, awaiting test results.

@OCA-git-bot OCA-git-bot merged commit 7cb4d70 into OCA:17.0 May 3, 2024
7 checks passed
@OCA-git-bot
Copy link
Contributor

Congratulations, your PR was merged at 3294256. Thanks a lot for contributing to OCA. ❤️

@rpinset
Copy link
Member

rpinset commented Jun 28, 2024

Hello, could there not be a calculation problem?
The immediately_usable_qty field gives the forecast quantity taking into account supplier receipts not yet received.
image

This does not match the field name and description

help="Stock for this Product that can be safely proposed "

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.