ArnesSI / netbox-inventory

Manage your hardware inventory in NetBox
MIT License
215 stars 21 forks source link

Support easy replacement #112

Closed shepherdjay closed 1 year ago

shepherdjay commented 1 year ago

When a device fails often the manufacturer will replace this with a like for like unit. Currently the way I'm considering tracking this is via a custom field choice of status replaced and just populating in notes what asset replaced it.

It would be useful if we could more easily track this operation. Some thoughts on implementation -- two new model fields:

Replaced and ReplacedBy that could be one-to-one links to other assets.

On an asset you could have a replace button that automatically generates an add asset form pre-populated with the previous devices details for everything but serial number.

matejv commented 1 year ago

On an asset you could have a replace button that automatically generates an add asset form pre-populated with the previous devices details for everything but serial number.

This is what the Clone button does already.

Regarding relation fields for replaced assets, that might be useful, but I'm not sure if it's just too narrow of a use case.

For example, for us, we replace any failed equipment with spares and when we get the replacement, we just edit the serial number of the failed asset and ad a journal entry with the old S/N. No sense in keeping the Asset around for a peace of hardware we don't have in possession.

Plus, you could add a custom field replaced_by that links to an asset. What would be the added value in adding those to the code?

shepherdjay commented 1 year ago

For example, for us, we replace any failed equipment with spares and when we get the replacement, we just edit the serial number of the failed asset and ad a journal entry with the old S/N. No sense in keeping the Asset around for a peace of hardware we don't have in possession

For us our accounting team has stated the need for us to maintain that separation and history of individual assets, allegedly for compliance reasons. So currently, we do track all assets including disposed and replaced assets up to that compliance history point.

Plus, you could add a custom field replaced_by that links to an asset. What would be the added value in adding those to the code?

So we did add additional status field choice of Replaced and a custom status of 'replaced_by' essentially in our config. The downside of the custom fields is that you can't create a bidirectional enforced relationship. IE while I could create replaced_by and replaces as an example. Populating those gets a bit tedious and error prone.

You are right that a full on RMA process might be too much of a use case stretch for this plugin. I will investigate the journal method and perhaps if I can pair it with a custom script that might be sufficient. Or even a custom script to create the bidirectional relationship I'm referring to via the custom fields.