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

RFC: fieldservice return management #1229

Open
gurneyalex opened this issue Oct 16, 2024 · 4 comments
Open

RFC: fieldservice return management #1229

gurneyalex opened this issue Oct 16, 2024 · 4 comments
Assignees
Milestone

Comments

@gurneyalex
Copy link
Member

For an customer project we are implementing these days on 17.0, we are using a number of fsm modules:

  • fsm_equipment_stock
  • fsm_repair
  • fsm_sale

This works fine for most of the flows. We would need handle an additional flow where a fsm order is created to fetch an equipment from its current location at product end of life, and bring it back to the workshop for refurbishing.

The way I see this involves an additional fsm_order_type for returns:

We would create an fsm_order with at type = "return" to dispatch a worker to the site to fetch the equipment. This would create the stock.picking with the procurement group linked to the fsm order (and thus displayed in the Returns smart button of the fsm order). We could have a helper button on the equipment to create the Return FSM order.

This could be handled in a new module fieldservice_equipment_stock_return or maybe as a new feature in the fieldservice_equipment_stock.

After the equipment has been returned, we will need to create a repair order for the equipment. Since this is not handled on the field, but in the workshop, we don't want to create a fsm order of type 'repair' for this, just a repair order. At this stage it is not obvious to us if the creation of the repair order should be part of the creation of the return field service order (maybe with a special flag on the fsm order type), or if we want another module fsm_equipment_stock_repair which can be used to create a repair order on the fly from any equipment. The latter could be useful when a worker dispatched on a generic field service needs to repair an equipment for which they found an issue during inspection, for instance.

@gurneyalex gurneyalex self-assigned this Oct 16, 2024
@gurneyalex gurneyalex added this to the 17.0 milestone Oct 16, 2024
@gurneyalex
Copy link
Member Author

ping @max3903 your feedback is welcome 💚

@max3903
Copy link
Member

max3903 commented Oct 19, 2024

Hello @gurneyalex

I would create:

  • 1 service "Pickup" which would be tracked with a FSM order by sales order line (FSM Template with type = Pickup)
  • 1 service "Repair" which would create a repair order (no need to be related to FSM, sale_mrp_repair)
  • 1 service "Delivery" which would be tracked with a FSM order by sales order line (FSM Template with type = Delivery)
  • Maybe a BOM or Combo of all 3 "Pickup + Repair + Delivery"

The sales order has a FSM Location field so you can add a field for the FSM equipment and filter based on the selected location.
When creating the FSM orders at the SO confirmation, you can set the equipment on both orders so the technician know which equipment to pickup/deliver (fieldservice_sale_equipment).

During this process, your customer may also want to have the return and the picking automatically created and linked to their corresponding FSM orders (fieldservice_sale_stock_equipment).

Does it help? What am I missing?

@imlopes
Copy link

imlopes commented Oct 21, 2024

#1241

@gurneyalex
Copy link
Member Author

Thanks @max3903

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

No branches or pull requests

3 participants