Drop down to list identities whose manager is Requestor

Which IIQ version are you inquiring about?

Version 8.2

Share all details related to your problem, including any error messages you may have received.

HI,

We have created to quicklink to update/Terminate sow Contractors. When Manager click on the quicklink, he/she should be able to see their direct reportees. We were able to fetch the list but Unable to pass that list with type= Identity . When we pass that as type=string in field, dropdown lists the value but in next form it is not fetching all required values for that identity.
How do we cast that list as type=identity

              import sailpoint.object.*;
								import java.util.*;
              import java.text.*;
								import org.apache.commons.collections.ListUtils; 
              
              List idenNameListFinal = new ArrayList();
              QueryOptions qo = new QueryOptions();
								Filter managerFilter= Filter.eq("manager.name",requestor);
              qo.add(managerFilter);
              log.error("Query Options:::"+qo);
              List idenList = context.getObjects(Identity.class, qo);
              log.error("Query Options1:::"+idenList);
              for(Identity iden:idenList){
               		log.error("idenList- second:::"+iden.getDisplayName());
										idenNameListFinal.add(iden);	
              }
              
              return idenNameListFinal; 
                </Source>
          </Script>
        </AllowedValuesDefinition>
      </Field>

Can you share information about next form and, what do you mean by not fetching all the values?
Are you displaying a confirmation page after a direct report is selected on the first form and the second form is not displaying all the identity information ?

@sunnyajmera
IN first form we just select the identity in drop down and in second form we are fetching identity atttibutes like(firstname,lastname, manager,email,costcenter etc) which will be editable for manager to update.
In the first form only when we give type=string ->it is disaplying the direct report in drop down but in next page identity attributes are not gettign displayed.
But when we give type=Identity ->It is not fetching the direct reports in dropdown . So we have to remoe the condition and display all identities in drop down with type=Identity . In this approach We wereable to fetch identiy attributes in second form

@Preethi

Can you please share the xmls of your forms.

Based on what I understand, you can use the below option by changing the type to Identity and also do a filtering as well


<Field displayName="ID Field" name="testID" type="sailpoint.object.Identity">

<Attributes>

  <Map>

  <entry key="hidden">

    <value>

    <Script>

    <Source>

      import sailpoint.object.Filter;

      import sailpoint.object.Filter.MatchMode;

     

      Filter filter = Filter.eq("manager.name",requestor);

      field.setFilterString(filter.toString());

      field.setHidden(false);

    </Source>

    </Script>

    </value>

  </entry>

  </Map>

</Attributes>

</Field>

Please try and let me know if it works

Hi Satish,

Tried the above code, But it is throwing error as below.
javax.servlet.ServletException: javax.servlet.ServletException: /include/formRenderer.xhtml @110,74 id=“form-ct-#{form.id}” /include/formRenderer.xhtml @110,74 id=“form-ct-#{form.id}”: /workitem/workItemForm.xhtml @52,70 value=“#{workItemForm.formBean}”: Error reading [formBean] on type [sailpoint.web.WorkItemFormBean]
at sailpoint.web.SailPointContextRequestFilter.doFilter(SailPointContextRequestFilter.java:78)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at sailpoint.web.util.MethodFilter.doFilter(MethodFilter.java:51)
TPS Identity update and terminate.xml (19.1 KB)

Hi Preethi,
I found at least couple of issues in your workflow - here is what I found

  1. You use requester variable while it should be launcher
  2. In Select Operation you send a lot of attributes like email, firstname, etc… but you never initialise this variables
  3. None of your fields in the form has type
1 Like

Have you considered create a new Quicklink population for your custom quicking? That way you will get Identity selection done by OOTB mechanism and your workflow will just receive the selected identity id.

Thanks Kamil! will check and get back to you