CA Service Management

  • 1.  Assignee not part of Group

    Posted Mar 12, 2015 08:17 AM

    Hi Team,

     

    I'm using r 12.5 version of CA SD. We have categories which has default group named "ABC" which has a set of users.These categories dont have any default assignee.

    When the analyst or engineer works on these tickets he assigns the call to his name. The problem here is: The engineer is not part of the group "ABC"  and yet when we save the ticket it doesn't do any validation and goes ahead with saving the ticket.

     

    Why this is happening (since it is a dltlookup field) and how to set a validation while saving.

     

    Thanks in advance.



  • 2.  Re: Assignee not part of Group

    Broadcom Employee
    Posted Mar 12, 2015 10:26 AM

    Manisha,

     

    Service Desk Manager allows an assignee to be specified who is not a member of assigned "Group". I'm not sure if others have come up with a customization to prevent this from happening, but perhaps another Community member may have ideas.



  • 3.  Re: Assignee not part of Group

    Posted Mar 13, 2015 12:22 AM

    Hi Alexander,

     

    You mean to say, this is the by default/out of box feature of SD.

     

    Can some1 help me resolve this issue.



  • 4.  Re: Assignee not part of Group

    Posted Mar 13, 2015 04:36 AM

    There is no hard condition, so that the assignee has to be a group member. Nevertheless, there are some checks done when entering an assignee:

    • If I click on the Assignee label, I get a contact selection list displaying all the members of the group.
    • If I start typing into the assignee field, the "search as you type" functionality shows me only members of the group. So when I type in names, which are not part of the group, I don't get a dropdown to select from. If the first characters matches members, I get a dropdown with these members.
    • If I enter a name which is not a member of the group and press tab, or leave the focus of the field, I get a contact list popup with an empty search result.

    These functioalities support me in selecting a member of the group, but it doesn't force me to do so, because it may make sense to select a different assignee, which is not a member of the group.

     

    If you realy need to have a hard condition, which prohibits a non member assignee, there would be some majic/spel codeing involved.

    Regards

    ...............Michael



  • 5.  Re: Assignee not part of Group

    Posted Mar 16, 2015 12:13 AM

    Hi Michael,

     

    Thanks for the reply.

     

    Few points to highlight,

     

    1.) Assignee is a dtlookup field in our environment.

    2.) Engineers enter the exact name and click on Save. So now in this case there is neither pressing of tab nor the focus leaves the field.

     

    Though I tried few changes in the WSP code it didn't help. Can you guide me the changes that needs to be done to the spel code?



  • 6.  Re: Assignee not part of Group

    Posted Mar 16, 2015 07:54 AM

    Hi Manisha.

    Take the two attached files, place them in your NX_ROOT/site/mods/majic directory, and restart your SDM service. Well, of course, do this in a test environment first, and use the code as it is .

    Be aware, that this code will not be supported by CA. Nevertheless, I hope that it fits to your expectations.

    Kind regards

    ..............Michael

    Attachment(s)

    zip
    zass_grpmem.mod.zip   246 B 1 version
    zip
    zass_grpmem.spl.zip   498 B 1 version


  • 7.  Re: Assignee not part of Group

    Posted Mar 17, 2015 12:56 AM

    Hi Michael,

     

    Thanks a lot for the code.

     

    The code seems to be working fine for the first time. Below is what I tried:

     

    1.) Created a ticket which had default group as "ABCD"

    2.) Set the assignee to "PQR"(not part of the group). It threw the error mentioned in the code.

    3.) Changed the assignee to "XYZ"(who also is not part of the group), instead of throwing the error, it Saved the ticket with this assignee.

     

    Can you suggest what modifications needs to be done in the code here?



  • 8.  Re: Assignee not part of Group

    Posted Mar 17, 2015 03:31 AM

    hi,

    i think this caused due to filter.

     

    try this:

    mod file:

    MODIFY cr PRE_VALIDATE zcheck_***_grpmem( assignee, group ) 111;

     

    spl file:

    cr::zcheck_***_grpmem( ... ) {

    string method;

    method = "cr::zcheck_***_grpmem";

     

    // catching changes

    if( (((uuid)argv[2])!=((uuid)argv[3])) || (((uuid)argv[5])!=((uuid)argv[6])) ) {

    if( !is_null(argv[3]) && !is_null(argv[6]) ) {

    send_wait(0, top_object(), "call_attr", "grpmem", "sync_fetch", "STATIC", format("member=U'%s' and group=U'%s'", (string)argv[3], (string)argv[6]), -1 ,0);

    if( msg[1] == 0 ) {

    set_return_data("Unable to save. The current assignee must be a member of the current group!");

    set_error(1);

    }

    }

    }

    }



  • 9.  Re: Assignee not part of Group

    Posted Mar 17, 2015 05:40 PM

    Hi Manisha.

    I wasn't able to reproduce the behaviour which you discribed, hence I have no idea why it isn't working in your environment.

    By the way, don't you get a popup with an empty contact list, when entering an assignee name which is not part of the filled in group, and press save?

    Just wondering.

     

    You may add a control line

    logf(SIGNIFICANT, "%s triggered", method);

    just after the "method = ..." line in the .spl file, and restart the system. This writes a log message into the stdlog whenever the assignee-groupmember condition is checked. I would be intersted in, if the trigger is executed in your "wrong" case when entering the second assignee (XYZ) and save the ticket.

    Regards

    .............Michael



  • 10.  Re: Assignee not part of Group
    Best Answer

    Posted Mar 20, 2015 01:39 AM

    Hi Michael,

     

     

    I guess I didn't test properly. It seems to be working as expected. Thanks a lot!!