9 Replies Latest reply on May 9, 2018 9:01 AM by nspeed

    object permission - visability depending on service in problem

    nspeed Apprentice

      At the moment IT an Facility Management can see all Problems.

      In Incident I changed this so that Facility Management can only see its own Incidents

      --> I used the  object permissions on that role --> "Update and View records where Incidents Service is equal to FM:xxxx"

       

      In Problem by default I have list for services instead of the service field.

       

      So the same as in Incident does not work as the service field does not contain data.

       

      One Idea would be to use the relationship CiAssociatesProblem. But this does not show up in the dropdown

      A simple workaround would be to fill in the Service field with the first one form the tab Service. But then I would have problems when a Problem concerns more than one service (which I think was the Idea of the list here).

       

      Any Ideas how to get the relationship in here so that only the defined roles are allowed to see/edit the Problem?

        • 1. Re: object permission - visability depending on service in problem
          nspeed Apprentice

          Update:

           

          From support I got

          "... this look like design question, and it is out of scope of support. ..."

           

          Does anybody else have different departments using problem BO and only show them their department problems?

           

          • 2. Re: object permission - visability depending on service in problem
            DTurner Expert

            Hi nspeed

             

            If they didn't advise as much, you can submit an enhancement request here: https://ivantiitsm.uservoice.com/

             

            As to the problem (no pun intended) you have here, I think you may be able to do this in a roundabout way

            CIAssociatesProblem won't be available as an access restriction due to the limitations of this feature:

            I'm a bit bogged down at the moment so not sure if this would work as I haven't look at it for that long but I would create a field on Problem and use a triggered action with ForEachChild() to update the field with either the CI RecId or OwnerTeam (depending on how you want to determine access) then provide access based on the contents of that field.

             

            Note: In my brief testing of this, I have had no end of issues getting the triggered action to work. Strangely, it seems to be using the last saved version of the triggered action so YMMV.

            • 3. Re: object permission - visability depending on service in problem
              IJU Apprentice

              Hi all,

               

              there is two ways I would try to accomplish this:

               

              1. Create a single text field in the problem which gets filled will all the services' names whenever a service gets linked or unlinked. This would require to build two triggered actions which run an udpdate object on this single field. The function to use would be "foreachchild". But collect all the Services. The Admin help gives great advices regarding this function: ForEachChild

               

              Then build a saved search and make it default for that each role which needs it and make the saved search look like this:

               

              Object permissions does not have that "contains" operator, sadly.

               

              2. Easier version of the first option: Create a saved search and make it default for all the roles needed. Here you have the option of searching through related objects as well.

               

               

              Beste Grüße / Best Regards

               

              Immanuel Jungheim
              Consultant

               

              ITSM Consulting GmbH |   Germany   |   D-55294 Bodenheim   |   Am Kuemmerling 21-25   
              Mobile: +49 151 29256681 |   Tel.: +49 6135 9334 0   |   Fax: +49 6135 9334 22   |   E-Mail: [email protected]   |   Web: www.itsmgroup.com

               

              ITSM Group – Be Better

              Geschäftsführer: Siegfried Riedel, Amtsgericht Mainz HRB 47740

              Diese E-Mail ist vertraulich zu behandeln. Sie kann besonderem rechtlichen Schutz unterliegen. Wenn Sie nicht der richtige Adressat sind, senden Sie bitte diese E-Mail an den Absender zurück, löschen die eingegangene E-Mail und geben den Inhalt der E-Mail nicht weiter. Jegliche unbefugte Bearbeitung, Nutzung, Vervielfältigung oder Verbreitung ist verboten. / This e-mail is confidential and may also be legally privileged. If you are not the intended recipient please reply to sender, delete the e-mail and do not disclose its contents to any person. Any unauthorized review, use, disclosure, copying or distribution is strictly prohibited.

              • 4. Re: object permission - visability depending on service in problem
                nspeed Apprentice

                Thanks for your ideas

                 

                but with the saved search the user could still select "All" and see all problems.

                 

                Maybe I will go for your suggested Idea and update the service field, at least I would have latest linked service and could use the permissions.

                 

                Sales tells you always you can do anything. ..... I havent had a look at changes yet ....

                • 5. Re: object permission - visability depending on service in problem
                  IJU Apprentice

                  Hi,

                   

                  in the layout you can disable the option for the search dropdown so the default search would be permanent:

                   

                   

                  You would also have to disable the free text search though since this would users still allow to search for the records not shown by the default search.

                   

                  Beste Grüße / Best Regards

                   

                  Immanuel Jungheim
                  Consultant

                   

                  ITSM Consulting GmbH   |   Germany   |   D-55294 Bodenheim   |   Am Kuemmerling 21-25
                  Mobile: +49 151 29256681   |   Tel.: +49 6135 9334 0   |   Fax: +49 6135 9334 22   |   E-Mail: [email protected]   |   Web: www.itsmgroup.com

                   

                  ITSM Group – Be Better

                  Geschäftsführer: Siegfried Riedel, Amtsgericht Mainz HRB 47740

                  Diese E-Mail ist vertraulich zu behandeln. Sie kann besonderem rechtlichen Schutz unterliegen. Wenn Sie nicht der richtige Adressat sind, senden Sie bitte diese E-Mail an den Absender zurück, löschen die eingegangene E-Mail und geben den Inhalt der E-Mail nicht weiter. Jegliche unbefugte Bearbeitung, Nutzung, Vervielfältigung oder Verbreitung ist verboten. / This e-mail is confidential and may also be legally privileged. If you are not the intended recipient please reply to sender, delete the e-mail and do not disclose its contents to any person. Any unauthorized review, use, disclosure, copying or distribution is strictly prohibited.

                  • 6. Re: object permission - visability depending on service in problem
                    nspeed Apprentice

                    Thank you

                     

                    good to know where I could disable the search, but I think this would decrease the usability

                    I want to give the useres same functions as in Incident (otherwise I have to explain why you find this here and in other BO it is different)

                     

                    I think that Incident, Problem an Change should at least look the same and be able to work the same.

                    • 7. Re: object permission - visability depending on service in problem
                      nspeed Apprentice

                      update:

                       

                      I tried a bit with a triggerd Action with "on Link"

                      using CIAssociatesProblem:CI#Service as relationship

                       

                      $(ForEachChild("Problem#",   RecId,   "CI#Service.CIAssociatesProblem",   $(Name)))

                      Result:

                      first linked service --> no data in field Service

                      with two linked Services --> one Service in field

                      with 3 linked Services --> Error due to Validation constraint because now the Name of 2 Services together do not match the validation List.

                       

                      --> this would work if permission had a contains function

                      https://ivantiitsm.uservoice.com/forums/904372-service-manager/suggestions/34176544-object-permission-with-contains-or-l…

                       

                      So I will try next  to use the dropdown service field like in Incident. With the problem that I can only link one Service

                      • 8. Re: object permission - visability depending on service in problem
                        DrizztLU Apprentice

                        Hi,

                         

                        I do have a solution for it.

                        I'm not into of duplicating data to reach a goal, so I'm using another nasty workaround.

                         

                        In object permission you can do the following:

                        You'll get a warning about returning multiple result, but I think it doesn't matter as it's exactly the same kind of relationships used to filter Owner in Incident based on OwnerTeam.

                        And it works

                         

                         

                        For the search, you can replace Problem by "Is Related To" and it gives plenty more possibilities:

                         

                         

                         

                         

                        For both solutions, I'd recommend adding a check for CIType = 'Service' just to be sure.

                        2 of 2 people found this helpful
                        • 9. Re: object permission - visability depending on service in problem
                          nspeed Apprentice

                          My hero of the day

                           

                          Thanks, it works

                           

                          I am using

                          $(if [CI#Service]Name == "Service-X" then RecId else "")

                           

                          Now I just have to make sure that the service is filled in. And many other things ...