Fix
Short answer: The lookup finds no record that matches, or the flow can't read its source. Check the source data, the lookup filters, and the source flow's security settings.
Why it happens
- The source dataset or process doesn't contain the value.
- No record matches the lookup's filters.
- A hidden character in a source value, such as a line break, makes the filter fail.
- Global lookup access is turned off for the source flow. Then no other flow can look it up, and a process can't look up itself.
- The lookup fetches too many records, or the form has many lookup fields.
How to fix it
- Check that the source dataset or process has the value. If not, ask its admin to add it.
- Review the lookup's filters. If no record matches, the field shows no results.
- If a value looks right but still doesn't match, delete it in the dataset and type it again to remove hidden characters.
- If global lookup access is off, open the source flow, click Manage > Security, and under Customized permissions click Add flow and add the flow that needs the lookup. See security settings for flows.
- If a customized permission exists but the lookup still fails, check it names the right flow. Remove it, add it again, then create a new lookup field.
- Sign out and back in, or clear site cookies, after the fix.
To speed up a slow lookup:
- Add a filter so the lookup fetches fewer records, for example only items with status In progress.
- Reduce the number of lookup fields on one form. In some cases a table works better.
Important
An aggregation across all items of a process, or a process looking up itself to catch duplicates, needs global lookup access on that process.
