# Fonction Lookup

Récupère la valeur d'un champ dans une table en filtrant sur une colonne de cette table.

## Syntaxe

```
Lookup(<Nom table>, <Champ de recherche>, <Champ à récupérer> [, <Valeur par défaut>])
```

## Paramètres

### Nom table

Nom de la table dans laquelle effectuer la recherche.

### Champ de recherche

Nom du champ de la table dans lequel effectuer la recherche.

### Champ à récupérer

Nom du champ de la table depuis lequel récupérer la valeur.
Il peut s'agir d'un champ calculé (FlowField).

### Valeur par défaut

Cet argument est optionnel.
Si vous l'indiquez et qu'aucun enregistrement n'est trouvé dans la table pour la valeur recherchée, alors la valeur par défaut est renvoyée.

## Exemples

A supposer que votre formule repose sur une ligne de type article dans la table Ligne vente, alors les deux expressions ci-dessous sont équivalentes.

```
{Item."Tariff No." ["No." = field("No.")]}
{"No." | Lookup(Item, "No.", "Tariff No.")}
```

La seconde récupère le champ _No._ de la ligne de vente et utilise _Lookup_ comme fonction de formattage. _Lookup_ recherche dans le champ _No._ (2è argument) de la table _Item_ (1er argument) la même valeur que dans le champ _No._ de la ligne vente. Une fois trouvé, c'est la valeur de _Tariff No._ dans la table _Item_ qui est retournée.

Vous utiliserez plutôt _Lookup_ lorsque vous avez déjà fait une recherche par la première syntaxe pour continuer à rechercher sur la table suivante.
Par exemple, pour récupérer la description de la nomenclature produit, vous pouvez faire :

```
{Item."Tariff No." | Lookup("Tariff Number", Code, Description) ["No." = field("No.")]}
```
