How to disable a value from an enum (so canno't be selected anymore) BUT not remove it (so old records and reports are still valids) ?

Hello,

I wonder if one of you has a good solution on how to disable a value from an enum (so canno't be selected anymore) BUT not remove it (so old records and reports are still valids) ?

For instance, a enum field with 4 values

  • A
  • B
  • C
  • D

Let's suppose that A what an option that was valid for old record but no more for new ones. Is there a proper way to remove this option when you create or update a record, but that will keep this old values for searches, reports etc.

Currently, without dev (that is an option) we

  • has a enum field : A, B, C, D
  • has another field enum field :version : V1, V2, V3 ...
  • the first enum field as a visibilty dependency according to the second one
  • the second one is set a default value for any new record so it will trigger the correct visibilty ; so any new version, you need to set up the default value correctly
  • of course we need an initial setup for all records

So it's a bit anoying and not really

any better idea or suggestion is welcome.

Regards,

Fred

Parents
  • Bonjour   ,


    I agree with   Roles are probably the easier way to do this.

    I would create a Role called "View - No Legacy Dropdown Values" (or some other similar label that makes it clear that this is for controlling dropdowns and not access-level for modules) and assign that Role to everyone with no change to module-level access.

    Then any time you have a dropdown for which you have to hide legacy values, you just create a role dependent dropdown list for that Role which does not contain Legacy Values,


    I would change the labels on legacy values to have something like "(legacy)" next to the name so that when they are seen on records your users know what that's about and sort them to the bottom of the list, changing labels makes it faster for you to identify and remove the legacy ones when creating the Role dependent dropdown.

    FrancescaS

Reply
  • Bonjour   ,


    I agree with   Roles are probably the easier way to do this.

    I would create a Role called "View - No Legacy Dropdown Values" (or some other similar label that makes it clear that this is for controlling dropdowns and not access-level for modules) and assign that Role to everyone with no change to module-level access.

    Then any time you have a dropdown for which you have to hide legacy values, you just create a role dependent dropdown list for that Role which does not contain Legacy Values,


    I would change the labels on legacy values to have something like "(legacy)" next to the name so that when they are seen on records your users know what that's about and sort them to the bottom of the list, changing labels makes it faster for you to identify and remove the legacy ones when creating the Role dependent dropdown.

    FrancescaS

Children
No Data