# SELECT LISTS

## Overview

Select lists are used to select and / or search for a value on forms.  For example a Part on a Workorder form.
Select lists can be [customized](form-adm-global-select-templates.md) for each object type so that they will display one or multiple fields from that object type.

By default the Name of an object will *always* be present in that object type's select list template in addition to any other fields selected for that object type's select list template.

They are also used to open the record selected in them or a new record if no selection has been made.

## Selecting
A maximum of 100 items are returned by the server for any select list and clicking on a select list will cause it to drop down and by default fetch the first 100 records found for that type of object in the AyaNova database. For objects that there are less than 100 of this is often all that is required to select the item you need.  However for larger lists a search will be necessary.

### No selection item 
Select lists have a special item represented by a single dash character `-` which indicates that no selection has been made for that item.

## Searching

The choices in the select list can be searched for by entering text into the control.
A valid search consists of a single text search a single [Tag](ay-start-form-tags.md) search or both separated by a space.

If a search is invalid the control will show an error message with a help link to this page of documentation.

By default the Name field is always present and searchable but other fields can be added for selection and searching via template.
Tags will only display if added to the template but you can always search for them.

### Search by text
A single string of text with no spaces can be entered into the control to bring back results that *contain* anywhere in their name or templated fields that text entered.
Multiple separate text queries are *not* supported, so for example this search `paul pero` is not valid.

The server will search all the fields that are specified in the select list template for that type of object.
By default searches are *not* case sensitive however that can be adjusted via [Global settings](form-adm-global-settings.md) if required.

For example if you want to quickly select a Customer named "Paul's Perogies" you could type `pau` and up to 100 of the Customers with "pau" anywhere in their select list template would be returned for selection.  You could also type `per` which would also match to "Paul's Perogies" and any other Customers with "per" anywhere in their template.

### Search by tag
A tag query is a string of text with no spaces that starts with two consecutive periods, i.e. `..north` will search for all objects tagged with tags that contain the text "north".

You can always search for an object by [Tag](ay-start-form-tags.md) even if it's not set to display in the select list template for that object type.  If the select list template has had tags added to it they will display in the selection list as a comma separated list of all tags e.g. "Paul's Perogies zone1,north,etc" but even if they are not added to the template they will still be searched when a tag query is entered.

Just like text searches, tag searches will match to any position in the tag name, so for example if you were searching for an object tagged with "outside-service" you could enter `..side` and it would match all tags that contain those letters.

### Combined searches
You can also search by tag and by text combined, for example entering `aul ..side` indicates you want to search all text for the letters "aul" and all tags for the letters "side" which is useful to narrow down the search quickly to very specific records.

### Opening selected record
If the selection list is displaying objects that you are able to open for editing, an edit icon will appear beside the control and clicking on that icon will directly open the edit form for that record or a empty for for a new record if the special "-" no selection item has been selected.  This is a quick way to get to the object from another object's edit form.  You will be prompted to save changes first if you have any unsaved changes.

### Clear button
The select list has a clear button that can be used to quickly erase the contents of the select list to save a step when you want to enter a new search.

## Customizing pick list template
The choice of fields displayed and searched in the select list can be [customized](form-adm-global-select-templates.md).
