-
-
Notifications
You must be signed in to change notification settings - Fork 723
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
[WMS][12.0] Add vertical lift support - alpha version #633
Conversation
This is a really nice idea, please, tag me if you want me to help with something. Daniel. |
Functional test, works well and as expected for this first version. Feedback will come after customer meeting. |
Remark to no forget it, the vertical_lift_kind should use the "generic" kind from #653 |
Hi, amazing job. I have done some test and I have a few ideas:
If you need my help please tell me what can I do. Daniel. |
Another annotation. In the naming you have x#y# as the only option, but, most companies will want to customize the cell name, for example, 1-1 or x01y01 or X01/Y01. Maybe it's impossible to allow all combinations required, but maybe we can do:
For example: x_prefix = X Will lead to a name: X01/Y01 Daniel. |
Some of the ideas have been implemented here as a proof of concept. |
Hi @damendieta Thanks for your reviews.
-> I guess you mean Z will then be used to display the position of the TRAY in the Shuttle ? As you can see in this work (https://github.com/OCA/stock-logistics-warehouse/issues/654) we kind of redefine how will will actually manage the corridor, shelf, etc.. So I guess your proposal is feasible.
-> I would tend to agree to that, though we had several bad experience adding location as view so far. May be @gurneyalex you have more infos ?
-> +1 for this proposal, or even move this to demo data, then add a paragraph in the configuration to ask people to create their tray type. |
Good suggestion of improvements. This one we may not be able to release our-self, but we'll happily review and accept any contribution through a PR. Thanks again for your input. |
Yes, that's the idea, to be able to plan a sequence for the picking. For example, if tray A and B share the same Z position, I can pick up products on A1 and B1 at the same time.
Me too, for that I think we should avoid using view but restrict products directly on some internal locations. So, we can Add products on A/x1y1 but not on A directly. |
PR already done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, functional test ok. Needs the development status
659ac18
to
700469b
Compare
6e2309e
to
7d12e69
Compare
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted the tray part in #719 |
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
0dfe9e6
to
f26d027
Compare
f26d027
to
1e7c2bf
Compare
There is no such action as 'ir.actions.do_nothing', it kinda works, until you look into the js console and stares at the errors. There is a nice OCA module that serves this purpose (more or less, because it reloads the window, this is not an issue).
Example of usage in an odoo shell, when a screen is open: >>> self.env['vertical.lift.shuttle'].browse(1)._operation_for_mode().operation_descr = 'foo' >>> self.env['vertical.lift.shuttle'].browse(1)._send_notification_refresh() >>> env.cr.commit() Provided the longpolling is correctly configured with a proxy, the screen should immediately refresh with 'foo' as operation description.
}); | ||
|
||
|
||
FormController.include({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: I tried to use a widget to handle the notifications handling and insert it in the view (rather than using the FormController
for this), but on this.reload()
, the 'start' method of the new widget was called before the 'destroy' of the previous one, so the channel was de-registered of the bus_service
.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Work is continued in 13.0 in #797 |
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
Extracted from stock_vertical_lift (OCA#633) Add tray types to stock locations, automatically generates sub-locations. Present them nicely with a custom widget.
This is a draft pull request, absolutely not production-ready, and does not meet yet the standards in term of documentation. At the moment, this is for demo purpose, the Pick workflows more or less works for a demo, put and inventory modes are not implemented. It implements a poc for #641
The goal is to support Vertical Lift such as Kardex or similar systems.
It adds a stock location structure for the Vertical Lift "shelves", with different levels:
Vertical Lift → Shuttles → Trays → Cells. The Cells are automatically generated from Tray Types (example: 4 cols and 2 rows) selected on the trays.
A visual representation of a tray displays the selected cell and color the cells that contain stock.
The initial proposal assumes that each Shuttle will be driven by a screen displaying the operations to do (pick or put, inventory will need some work as well). Here's the (incomplete) dedicated UI, with the information about the product to pick + visualization of the tray and cell to pick.