Lookup Control is a component used for displaying data in a tabular format and comes with various configurations for data manipulation and presentation. It is used for displaying and searching for EmpowerID objects. All text/labels in a lookup can be localized.
To view the Lookup Control in the EmpowerID Web User Interface, you must place it within a workflow.
This is how a lookup control looks in Workflow Studio.
Component Objects and Data Methods
The EmpowerID Identity and Entitlement Warehouse is the main database to store EmpowerID’s objects.
Objects in each table are exposed as “Components” with their properties and stored procedures as component methods (Data Methods). The SQL views for the tables are the component view objects.
In the below image (Lookup Control 1.0) PersonView object provides a consolidated view of all the data fields associated with EmpowerID people
GetAllSearchAdvanced(int? externalApprovalID, int? GroupID, bool active, ……) method returns all people contained in the EmpowerID Identity Warehouse to the Lookup Control.
Type
A lookup is defined by “Type” as either a single select or multi-select lookup when designed.
A lookup shows a grid of objects and allows selection of one or multiple.
Decisions
From the decisions list you can choose the buttons that you want to display on your lookup control.
Grid Columns
Grid columns are properties of your object.
Their labels can be localized strings.
You add columns using the “Lookup Designer” menu.
Columns can be added individually or as a group by selecting pre-defined “Grid Types” – these are xml definitions stored in SQL for common scenarios.
Grid columns can be reordered by grabbing and dragging them.
Grid columns can have “Value Formats” assigned to render dates or checkboxes, etc.
When click on Lookup Designer → New Column a Field Selector dialog box will appear.
Use the Value Format property to render the field in different formats. i.e., dates or checkboxes, etc.
Use the Label property to set the column name.
Use the Field Name property to show the data in the particular column.
Edit Search Criteria
Many methods support Advanced Search.
Fields added must be searchable / indexed.
IsAdvanced Search Enabled
If this checkbox is checked, then you can do searching on the columns that have been added in the Edit Search Details dialog box see above image. You can add more columns to the search criteria by clicking on the Add New button and can remove any column from the search criteria by clicking on the Remove button.
Use Search Terms
SearchTerms is a “generated” field with advanced logic to aid searching and should be used whenever present.
Enable Custom SQL
When Enable Custom SQL Search what it will do, it will enable advanced SQL Search and it will ignore other search criteria, it will also ignore the method configuration. Assume that the component will have a hardcoded name.
Look at the below image (Enable Custom SQL 1.0). This is how your lookup control will appear in the Web UI when published after enabling the Enable Custom SQL option. This will give you the capability to find the records by writing the query but ensure that queries must begin by returning the GUID and FriendlyName of the objects otherwise, they will fail during compilation. Currently, queries will return a maximum of 10 records.
Tree Method Configuration
We can enable tree control on our lookups. This gives us the ability to filter the data in lookup control based on the selection of the chosen tree node. Only methods with an appropriate tree parameter should have the tree enabled.
When enabling a tree on the Lookup Control, make sure you have Only allow selection of assignable checkbox is checked.
This is how tree control looks in the EmpowerID Web UI