Managing trash of products

Rational

It is possible that when inventorying a product you realize that it is not usable anymore and it has to be thrown away. This has already been raised some time ago:

Proposal

Allow lost and found locations as destination for the following moves:

  • Supplier Shipment Inventory Moves
  • Customer Returns Inventory Moves
  • Productions Outputs
  • Internal Shipments Moves

Implementation

http://codereview.tryton.org/323431002

I think the location type should probably be named Waste (or possibly Scrap) instead of Trash.

A system I worked with years ago had different kind of Lost & Found locations: Waste, Lost, Stolen, Destroyed, etc …

I don’t know how they knew that some items were lost instead of stolen :slight_smile:, but my point is that I am not sure it should be a location type but rather a sub-type of the Lost & Found so that people can add the one that suits their way of managing the warehouse data.

2 Likes

I’ve updated it to Waste. I find it more generic than Scrap.

The main point for having a separate type is that Lost & Found will only be used on inventories where you do not know why the product is missing.

Wast locations type should be only allowed when manually doing moves so the user which enters the product can select a diferent locations depending on the reason, where it has been lost or whatever criteria.

For me it’s important to have the distintion because:

  • Lost & Found is unexpected product diference
  • Waste is somewhat expected
1 Like

I do not like to introduce one more location type when lost_found already exists for this purpose.
It is just a matter of proper naming and internal organisation.

Do you think we should create by default a Waste named location of type lost_found.
This will ease the discoverability of this feature.

For me the current lost and found is enough as a waste is a lost.
It is only some particular companies that will want to separate different kind of lost.

I’ve added http://codereview.tryton.org/323431002 which implements it.

It also manages the product cost for the production outputs. So if an output of a production is trashed it’s unit_price is set to zero and the input cost is included as part of other outputs.