4 Replies Latest reply on Jan 14, 2021 8:11 AM by R.J. H

    Disabling the "Replace" option for group feature inheritance

    R.J. H New Member

      Hello everyone,

       

      Is it possible to disable only the "Replace" option for group feature inheritance?

       

      Some background:

       

      Feature inheritance is important for our data model, and ideally we'd like it to happen automatically when any relevant changes occur. I found feature request HPM-35354 : Inherit the parent structure group's features when importing new sub groups, which I've voted up.

       

      In the meanwhile, running the "Feature inheritance > Overwrite" option from the Structure tree or Feature groups list view is a workable solution, and we'd like to give our non-admin data specialists access to run it when changes occur. (If there's a way to schedule "Overwrite" to run for each group, that would be a good solution, too.)

       

      However, the presence of the "Replace" option in the Structure tree view is making us think twice before granting that access. Most of our attributes aren't inherited, so accidentally running "Replace" on a higher-level group would effectively delete 80+% of the attribute data under that group. And because the "Replace" and "Overwrite" terms are similar, it's easy to confuse them (at least for me); it took quite a long time to remember which one was "the thing you want to happen all the time" vs the other, which for us is "start planning to restore the database from a backup". I'd really like to avoid putting our data specialists in the position of accidentally running the wrong one!

       

       

      It seems the easiest way to avoid that risk would be simply disabling "Feature inheritance > Replace" if possible. I'm also open to any other suggestions about achieving the feature inheritance goals I detailed.

       

      Thanks in advance!

      RJ

        • 1. Re: Disabling the "Replace" option for group feature inheritance
          Daniel Walter Guru

          Hey RJ,

           

          thanks for providing your use case with all those details.

          I had a look at your scenario but unfortunately did not find any granular permissions or settings to limit the options of this menu, just the general access to the inheritance functionality.

           

          For sure when in doubt it would be possible to look at the help to see an explanation of what the options mean, but I understand your reluctance of giving this option to many users.

           

          One approach I could think of is letting the system watch the relevant changes of features and triggering a workflow in case something changes. Either this could create a task for a user with corresponding permissions to take some actions, or if preferred update the feature on child groups automatically.

          Best,

          Daniel

          1 of 1 people found this helpful
          • 2. Re: Disabling the "Replace" option for group feature inheritance
            R.J. H New Member

            Thanks for checking and for the suggestions, Daniel!

             

            For the very short term, I'm thinking of granting this permission and training our specialists to always perform inheritance from the Feature groups list view, where only Overwrite and Add are available. This will remove the risk of them mis-clicking "Replace", and they'll get accustomed to only seeing two non-harmful options. If they see three options, they'll know they're in the wrong place.

             

            I like the idea of building something to perform this automatically in the longer term, either triggered by a change or perhaps run periodically.

             

            Is there a way to trigger feature inheritance for a group via the API or another means? I see that this used to be a client-only function and there's now a server job for it, but I'm not sure whether it's possible to initiate a server job for a specific group other than through the context menus in the Structure tree and Feature groups list views.

             

            Regards,

            RJ

            • 3. Re: Disabling the "Replace" option for group feature inheritance
              Daniel Walter Guru

              Sounds like you have found a pragmatic solution of guiding your team here!

              The inheritance between groups is still a client functionality as far as I know, there is the "feature-attribute match" which is a job, but this only takes care of syncing the features of the group with the attributes of products, variants and items, not features between groups.

               

              Best,

              Daniel

              1 of 1 people found this helpful
              • 4. Re: Disabling the "Replace" option for group feature inheritance
                R.J. H New Member

                I had thought the same, Daniel! Then I saw these, which seem to indicate the server job was implemented:

                 

                I was thinking perhaps it was the "Update structure group features" job:

                 

                Whenever I run inheritance, though, it is run in the client, and I don't see any activity from that job. So perhaps the issue was resolved in some way other than adding a server job.

                 

                Regards

                RJ