#GroupObjectError ISSUE: Group process variables setting strangely

#GroupObjectError
ISSUE:
Group process variables setting strangely
DETAILS:
If we monitor a process and view the variable in question (see here: http://db.tt/nxFElqOv and here: http://db.tt/jd2iFSkp) we see it defined as "-1".
If we look at the process details page in the backend, the group looks null (see here: http://db.tt/YIHT7BqB)
QUESTIONS:
How can we handle this object (to filter on it for example) - it is not null, in the sense that it does not respond to isnull checks.
How does it get created?...

OriginalPostID-79163

OriginalPostID-79163

  Discussion posts and replies are publicly visible

  • I am assuming you don't have a group called _"-1", correct? The interesting thing for me is to find out how or where the value is getting set. I suggest you do a step-by-step debug to identify this. Usually the Group will show you the name of the group. Having said that, were any groups deleted at all?
  • No, we don't have a group called "-1". I will try seeing how a group changes in a pv when the group is deleted, I think that's a good insight..
  • 0
    Certified Lead Developer
    I have observed that, if a group gets deleted then group id will remain in process variable when you monitor the process. If you want to check whether that group exist or not, instead of isnull checks you may use the custom function doesgroupexist() from Appian Shared Component "Group Functions". This function accepts groupId and returns true if group exists.

    Here is the link to the component
    forum.appian.com/.../summary
  • Hi Siva, Yes, that's what I see in general- it seems strange that in some circumstances we see '-1' which is not a valid group id (especially as when we look at all the places this happens, we expect a variety of different groups to be there..).
    I will try this plugin, thanks for this.
  • Hi Siva,
    I have installed this plugin and found the following- have you seen this sort of behaviour before:
    Try the function doesgroupexist() on pv!processviewergroups[1] [Sometimes showing http://db.tt/jd2iFSkp and sometimes showing http://db.tt/YIHT7BqB ]

    Throws the error:
    There is a problem with task “DoesGroupExist” in the process “Ms Jenna Lawrence”. ERROR:An error occurred while evaluating expression: ClientSatisfactionQuestionnaire:doesgroupexist(pv!ProcessViewerGroups) (Expression evaluation error at function 'doesgroupexist': Error evaluating function 'doesgroupexist' : The passed parameter(s) are of the wrong type.) (Data Outputs)

    One supposes that perhaps the issue is, in fact, with the datatype of the object.
    Run the following expression over the variable (down the report)
    =exact(typename(typeof(pv!ProcessViewerGroups)), "List of User or Group")
    Returns True

    So the curious object just got a bit more curious.
    It both has and has not got the correct type.
    It is both a list of groups and not a list of groups.
  • 0
    Certified Lead Developer
    I believe doesgroupexist() expects an input strictly of type Group and doesn't handle data type "User or Group".