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.")]}